A syntactic theory of transparent parameterization
- 280 Downloads
We present a calculus for Lamping's programming system of transparent and orthogonal parameterization. The calculus is shown to be consistent, to have a standardization procedure, and to correspond with an operational semantics obtained from the denotational semantics by viewing the semantic equations as state transition rules. Lamping's system is remarkable because it is small, having only four constructions, yet it can easily express a wide variety of parameterization mechanisms including lexical variables, dynamic variables, procedure calls, first-class environments, modules, and method lookup and inheritance mechanisms of object-oriented systems. Due to its orthogonal and transparent parameterization mechanisms, every object, including data and code, in Lamping's programming system can be parameterized, and a parameterized object can be manipulated as if it were a ground object. This blurs the distinction between data and code, allowing one to think of data as code and vice versa.
KeywordsOperational Semantic Data Dist Denotational Semantic Ground Object Lexical Variable
- H.P. Barendregt. The Lambda Calculus: Its Syntax and Semantics. North-Holland, second edition, 1984.Google Scholar
- John O. Lamping. A unified system of parameterization for programming languages. In 1988 ACM Conference On Lisp and Functional Programming, pages 316–326, July 1988.Google Scholar
- John O. Lamping. A Unified System Of Parameterization For Programming Languages. PhD thesis, Stanford University, April 1988.Google Scholar
- Joseph E. Stoy. Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory. MIT Press, 1981.Google Scholar