Constructing language processors with algebra combinators
Modular Monadic Semantics (MMS) is a well-known mechanism for structuring modular denotational semantic definitions for programming languages. The principal attraction of MMS is that families of language constructs can be independently specified and later combined in a mix-and-match fashion to creat...
Uloženo v:
| Vydáno v: | Science of computer programming Ročník 75; číslo 7; s. 543 - 572 |
|---|---|
| Hlavní autoři: | , , , |
| Médium: | Journal Article |
| Jazyk: | angličtina |
| Vydáno: |
Elsevier B.V
01.07.2010
|
| Témata: | |
| ISSN: | 0167-6423, 1872-7964 |
| On-line přístup: | Získat plný text |
| Tagy: |
Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
|
| Shrnutí: | Modular Monadic Semantics (MMS) is a well-known mechanism for structuring modular denotational semantic definitions for programming languages. The principal attraction of MMS is that families of language constructs can be independently specified and later combined in a mix-and-match fashion to create a complete language semantics. This has proved useful for constructing formal, yet executable, semantics when prototyping languages. In this work we demonstrate that MMS has an additional
software engineering benefit. In addition to composing semantics for various language constructs, we can use MMS to compose various differing semantics for the same language constructs. This capability allows us to compose and reuse orthogonal language tasks such as type checking and compilation. We describe
algebra combinators, the principal vehicle for achieving this reuse, along with a series of applications of the technique for common language processing tasks. |
|---|---|
| ISSN: | 0167-6423 1872-7964 |
| DOI: | 10.1016/j.scico.2009.12.007 |