Abstract
This paper reports on results concerning the combination of non-standard semantics via interpreters. We define what a semantics combination means and identify under which conditions a combination can be realized by computer programs (robustness, safely combinable). We develop the underlying mathematical theory and examine the meaning of several non-standard interpreter towers. Our results suggest a technique for the implementation of a certain class of programming language dialects by composing a hierarchy of non-standard interpreters.
On leave from DIKU, Department of Computer Science, University of Copenhagen.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
S. M. Abramov, R. Glück. From standard to non-standard semantics by semantics modifiers. International Journal of Foundations of Computer Science. to appear.
S. M. Abramov, R. Glück. The universal resolving algorithm: inverse computation in a functional language. In R. Backhouse, J. N. Oliveira (eds.), Mathematics of Program Construction. Proceedings, LNCS 1837, 187–212. Springer-Verlag, 2000.
K. Apt, F. Turini. Meta-Logics and Logic Programming. MIT Press, 1995.
O. Danvy. Across the bridge between reflection and partial evaluation. In D. Bjørner, A. P. Ershov, N. D. Jones (eds.), PEMC, 83–116. North-Holland, 1988.
O. Danvy, R. Glück, P. Thiemann (eds.). Partial Evaluation. Proceedings, LNCS 1110. Springer-Verlag, 1996.
J. Earley, H. Sturgis. A formalism for translator interactions. CACM, 13(10):607–617, 1970.
Y. Futamura. Partial evaluation of computing process-an approach to a compilercompiler. Systems, Computers, Controls, 2(5):45–50, 1971.
S. Jefferson, D. P. Friedman. A simple reflective interpreter. Lisp and Symbolic Computation, 9(2/3):181–202, 1996.
N. D. Jones, C. K. Gomard, P. Sestoft. Partial Evaluation and Automatic Program Generation. Prentice-Hall, 1993.
S. N. Kamin. Programming Languages: An Interpreter-Based Approach. Addison-Wesley, 1990.
A. Kishon, P. Hudak. Semantics directed program execution monitoring. Journal of Functional Programming, 5(4):501–547, 1995.
P. Lucas, P. Lauer, H. Stigleitner. Method and notation for the formal definition of programming languages. Technical report, IBM Lab Vienna, 1968.
J. McCarthy. Recursive functions of symb. expressions. CACM, 3(4):184–195, 1960.
F. G. Pagan. On interpreter-oriented definitions of programming languages. Computer Journal, 19(2):151–155, 1976.
J. C. Reynolds. Definitional interpreters for higher-order programming languages. In ACM Annual Conference, 717–740. ACM, 1972.
B. J. Ross. Running programs backwards: the logical inversion of imperative computation. Formal Aspects of Computing, 9:331–348, 1997.
B. C. Smith. Reflection and semantics in Lisp. In POPL, 23–35. ACM Press, 1984.
G. L. Steele. Building interpreters by composing monads. In POPL, 472–492. ACM Press, 1994.
G. L. Steele, G. J. Sussman. The art of the interpreter or, the modularity complex (parts zero, one, two). MIT AI Memo 453, MIT AI Laboratory, 1978.
L. Sterling, E. Shapiro. The Art of Prolog. MIT Press, 1986.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Abramov, S., Glück, R. (2000). Combining Semantics with Non-standard Interpreter Hierarchies. In: Kapoor, S., Prasad, S. (eds) FST TCS 2000: Foundations of Software Technology and Theoretical Computer Science. FSTTCS 2000. Lecture Notes in Computer Science, vol 1974. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44450-5_16
Download citation
DOI: https://doi.org/10.1007/3-540-44450-5_16
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-41413-1
Online ISBN: 978-3-540-44450-3
eBook Packages: Springer Book Archive