Zusammenfassung
Eine wichtige Aufgabe bei der Implementation eines Static Scope LISP Interpretierers ist die Organisation des Zugriffs auf Variablenwerte Herkömmliche Interpretierer verwenden hierfür Assoziationslisten oder Shallow Binding und erreichen Static Scoping durch die einfach zu implementierende Closure-Bildung. Bei der Implementation ALGOL- artiger Sprachen wird dagegen meist die effizientere Technik des Laufzeitkellers verwendet, wobei Static Scoping dann durch komplizierte Verweisstrukturen in diesem Keller realisiert wird. Die vorliegende Arbeit stellt ein Verfahren vor, das die effiziente Laufzeitkeller-Technik mit der unkomplizierten Closure-Bildung kombiniert. Diese Methode erlaubt darüberhinaus eine statische Optimierung von Funktionsaufrufen, die bei Assoziationslisten oder Shallow Binding prinzipiell nicht möglich ist.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Literaturhinweise
Baker, H. G. Shallow Binding in LISP 1.5 CACM, Band 21, Nr. 7, S. 565–569, Juli 1978
Bauchrowitz, N. Vergleich einer operationeilen mit einer denotationellen Semantik für LISP Diplomarbeit am Institut für Informatik und Prakti-sche Mathematik der Universität Kiel, 1980
Berry, D. M. Block Structure: Retention or Deletion Proceedings of the Third Annual ACM Symposium on the Theory of Computing, 1971
Felgentreu, K.-U., Lippe, W.-M. Low Cost Calls. - Definition, Detection and Implementation Bericht Nr. 1/85-1, Institut für Numerische und instrumenteile Mathematik der Universität Münster, 1985
Felgentreu, K.-U. Decidability Problems Concerning the Optimization of Function Calls Bericht Nr. 3/85-1, Institut für Numerische und instrumenteile Mathematik der Universität Münster, 1985
Felgentreu, K.-U., Lippe, W.-M. Dynamic Optimization of Covered Tail Recursive Functions in Applicative Languages Proceedings of the ACM Computer Science Conference ′86, S. 293–299, Februar 1986
Felgentreu, K.-U., Lippe, W.-M. A General Approach to the Optimization of Function Calls Proceedings of the European Symposium on Programming 1986, Lecture Notes in Computer Science, Band 213, S. 41–52, März 1986
Fe/Li/Si86) Felgentreu, K.-U., Lippe, W.-M., Simon, F. Optimizing Static Scope LISP by Repetitive Interpretation of Recursive Function Calls (erscheint in IEEE Transactions on Software Engineering)
Grau, A.A., Hill, U., Langmaack, H. Translation of ALGOL 60 Handbook for Automatic Computing, Band 1, Springer-Verlag 1967
Honschopp, U. Implementation der funktionalen Programmiersprache LISP/N Diplomarbeit am Institut für Informatik und Praktische Mathematik der Universität Kiel, 1983
Langmaack, H. On correct Procedure.Parameter Transmission in Higher Programming Languages Acta Informatica, Band 2, S. 110–142, 1973
Lippe, W.-M., Simon, F. LISP/N - Basic Definitions and Properties Bericht Nr. 4/79, Institut für Informatik und Praktische Mathematik der Universität Kiel, Oktober 1979
McCarthy, J., et. al. LISP 1.5 Programmer’s Manual MIT Press, Cambridge, Massachusetts, 1966
Simon, F. Zur Charakterisierung von LISP als ALGOL - ähnliche Programmiersprache mit einem strikt nach dem Kellerprinzip arbeitenden Laufzeitsystem Bericht Nr. 2/78, Institut für Informatik und Praktische Mathematik der Universität Kiel, 1978
Steele, G. L., Sussman, G. J. The Art of the Interpreter, or, The Modularity Complex Memo Nr. 453, Artificial Intelligence Laboratory, MIT, 1978
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1986 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Felgentreu, KU. (1986). Ein Optimierter Static Scope Lisp-Interpretierer Auf Der Basis Algol-Artiger Laufzeitkeller. In: Hommel, G., Schindler, S. (eds) Informatik-Anwendungen — Trends und Perspektiven. Informatik-Fachberichte, vol 126. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-71388-0_14
Download citation
DOI: https://doi.org/10.1007/978-3-642-71388-0_14
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-16813-3
Online ISBN: 978-3-642-71388-0
eBook Packages: Springer Book Archive