Abstract
Gentle [Schröer 89] is a compiler description language in the tradition of two level grammars [Koster 71] and logic programming [Warren 80]. It provides a common declarative notation for high level description of analysis, transformation, and synthesis. Imperative constructs like global variables and dynamic arrays, needed for efficient compiler construction, are introduced as well. A tool has been implemented to check the wellformedness of Gentle descriptions, and to generate very fast (generation speed 260.000 lines per minute) very efficient compilers (compilation speed nearly 90.000 line per minute on Dec 3100 workstation). The language and a supporting tool were designed and implemented by F.W. Schröer in 1989.
References
C.H.A Koster. Affix grammers. In J.E.L Peck, editor, ALGOL 68 Implementation, pages 95–109. North Holland, 1971.
F.W. Schröer. Gentle. In J. Grosch, F.W. Schröer, and W.M. Waite, editors, Three Compiler Specifications, GMD — Studien Nr. 166, pages 31–36. Gesellschaft für Mathematik und Datenverarbeitung, Forschungsstelle Karlsruhe, August 1989.
Jürgen Vollmer. A tutorial on gentle. Arbeitsberichte der GMD Nr 508, GMD, German National Research Center for Computer Science, Vincenz-Prießnitz-Straße 1, D-7500 Karlsruhe-1, February 1991.
David H.D. Warren. Logic programming and compiler writing. Software-Practice and Experience, 10:97–125, 1980.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Vollmer, J. (1991). Experiences with gentle: Efficient compiler construction based on logic programming. In: Maluszyński, J., Wirsing, M. (eds) Programming Language Implementation and Logic Programming. PLILP 1991. Lecture Notes in Computer Science, vol 528. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-54444-5_120
Download citation
DOI: https://doi.org/10.1007/3-540-54444-5_120
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-54444-9
Online ISBN: 978-3-540-38362-8
eBook Packages: Springer Book Archive