The algebraic specification of the semantics of programming languages is outlined. Particular emphasis is given to the problem of specifying least-fixed points by first-order conditional equations. To cover this issue, the theory of specifying partial heterogeneous algebras by abstract data types is slightly extended by a more general notion of homomorphism. In this framework the semantics of programming languages can be uniquely specified in a purely algebraic way, using particular models of a hierarchy of abstract types. This approach is demonstrated for a simple procedural programming language. Several increasingly complex versions of iterations are treated and analyzed with respect to their theoretical consequences. Finally, as a complementary algebraic technique, transformational semantics is explained and applied to our examples.
%0 Journal Article
%1 broy_87_algebraic
%A Broy, Manfred
%A Wirsing, Martin
%A Pepper, Peter
%C New York, NY, USA
%D 1987
%I ACM
%J ACM Trans. Program. Lang. Syst.
%K 1987 language algebraic
%N 1
%P 54--99
%R 10.1145/9758.10501
%T On the algebraic definition of programming languages
%U http://dx.doi.org/10.1145/9758.10501
%V 9
%X The algebraic specification of the semantics of programming languages is outlined. Particular emphasis is given to the problem of specifying least-fixed points by first-order conditional equations. To cover this issue, the theory of specifying partial heterogeneous algebras by abstract data types is slightly extended by a more general notion of homomorphism. In this framework the semantics of programming languages can be uniquely specified in a purely algebraic way, using particular models of a hierarchy of abstract types. This approach is demonstrated for a simple procedural programming language. Several increasingly complex versions of iterations are treated and analyzed with respect to their theoretical consequences. Finally, as a complementary algebraic technique, transformational semantics is explained and applied to our examples.
@article{broy_87_algebraic,
abstract = {The algebraic specification of the semantics of programming languages is outlined. Particular emphasis is given to the problem of specifying least-fixed points by first-order conditional equations. To cover this issue, the theory of specifying partial heterogeneous algebras by abstract data types is slightly extended by a more general notion of homomorphism. In this framework the semantics of programming languages can be uniquely specified in a purely algebraic way, using particular models of a hierarchy of abstract types. This approach is demonstrated for a simple procedural programming language. Several increasingly complex versions of iterations are treated and analyzed with respect to their theoretical consequences. Finally, as a complementary algebraic technique, transformational semantics is explained and applied to our examples.},
added-at = {2009-02-11T22:23:20.000+0100},
address = {New York, NY, USA},
author = {Broy, Manfred and Wirsing, Martin and Pepper, Peter},
biburl = {https://www.bibsonomy.org/bibtex/27b8f7e1eb6db7e23c1329896b41b806e/leonardo},
citeulike-article-id = {3404883},
doi = {10.1145/9758.10501},
interhash = {1a6ec09ca7e95cd96be84afb5d53c590},
intrahash = {7b8f7e1eb6db7e23c1329896b41b806e},
issn = {0164-0925},
journal = {ACM Trans. Program. Lang. Syst.},
keywords = {1987 language algebraic},
number = 1,
pages = {54--99},
posted-at = {2008-10-15 16:52:04},
priority = {2},
publisher = {ACM},
timestamp = {2009-02-11T22:23:20.000+0100},
title = {On the algebraic definition of programming languages},
url = {http://dx.doi.org/10.1145/9758.10501},
volume = 9,
year = 1987
}