printlogo
ETH Zuerich - Homepage
Computer Engineering and Networks Laboratory (TIK)
 

Publication Details for PhD Thesis "Modular Language Specification and Composition"

 

 Back

 New Search

 

Authors: Christoph Denzler
Group: System Engineering
Type: PhD Thesis
Title: Modular Language Specification and Composition
Year: 2001
Month: July
Pub-Key: Den01
Keywords: Programming Language Specification, Compiler Construction
ISBN: 3-8265-9157-7
ETH Nbr: 14215
Pub Nbr: 43
School: ETH Zurich
Abstract: This dissertation deals with the modularisation of specifications of programming languages. A specification will not be partitioned into compiler phases as usual but into modules - called Montages - which describe one language construct completely. This partitioning allows to plug specifications of language constructs into a specification for a language and - as Montages contain executable code - thus building an interpreter for the specified language. The problems that follow from this are discussed on different levels of abstraction. The different character of language specifications on a construct by construct basis also demands for a different concept of the whole system. Knowledge about processes, such as parsing, has to be distributed to many Montages. But this is made up by the increased flexibility of Montage deployment. A language construct that once has been successfully implemented for a language can be reused with only minor adaptations in many different languages. Well-defined access via interfaces separate Montages clearly, such that changes in one construct cannot have unintentional side-effects on other constructs. This dissertation describes the concept and implementation of a system based on Java as a specification language. Reuse of specifications is not restricted to reuse of source code but it is also possible to reuse precompiled components. This enables to distribute and sell language specifications without giving away valuable know-how on its internals. Some approaches towards development and distribution of as well as support on language components will be discussed. A detailed description of the Montage Component System will go into the particulars of decentralised parsing (each Montage can parse only its specified construct), explain how static semantics can be processed efficiently and how a program can be executed, i.e. how its dynamic semantics is processed.
Remarks: Examination Date: 1. June 2001
Location: Aachen, Germany
Resources: [BibTeX]

 

 Back

 New Search