Options
Reusable components for lightweight mechanisation of programming languages
Publikationstyp
Conference Paper
Publikationsdatum
2013
Institut
TORE-URI
First published in
Number in series
8088 LNCS
Start Page
1
End Page
16
Citation
Binder W., Bodden E., Löwe W. (eds) Software Composition. SC 2013. Lecture Notes in Computer Science, vol 8088. Springer, Berlin, Heidelberg
Contribution to Conference
Publisher DOI
Scopus ID
Publisher
Springer
Implementing Programming Languages (PLs) has always been a challenge for various reasons. One reason is the excess of routine tasks to be redone on every implementation cycle. This is despite the remarkable fraction of syntax and semantics usually shared between successive cycles. In this paper, we present a component-based approach to avoid reimplementation of shared PL fractions. We provide two sets of reusable components; one for syntax implementation and another for semantics. Our syntax and semantics components correspond to syntactic categories and semantics rules of a PL specification, respectively. We show how, in addition to their service to reusability in syntax and semantics, our components can cater reusable implementation of PL analyses. Our current level of experimentation suggests that this approach is applicable wherever the following two features are available or can be simulated: Type Constraints and Multiple Inheritance. Implementing a PL using our approach, however, requires some modest programming discipline that we will explain throughout the text. © 2013 IFIP International Federation for Information Processing.
Schlagworte
operational semantic
syntactic category
derivation tree
expression trait
type constraint
DDC Class
510: Mathematik
600: Technik
620: Ingenieurwissenschaften