Skip to main content

Recognition of generative languages

  • Conference paper
  • First Online:
Programs as Data Objects

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 217))

Abstract

Generative languages are a comprehensive class which includes so-called extensible programming languages. Our formal descriptions of syntax and semantics of these languages differ from traditional approaches in that any kind of declaration is viewed as a language extension. As a consequence, the concept of types in programming languages is handled in a simple and conceptually satisfactory fashion. In this paper we show how recursive-descent parsing can be adapted for generative languages.

New powerful languages may be described this way and implementations of traditional languages can be improved.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  • Aho, A.V., Johnson, S.C., and Ullman, J.D., Deterministic Parsing of Ambiguous Grammars, Communications of the ACM 8, pp. 441–452 (1975).

    Google Scholar 

  • Aho, A.V. and Ullman, J.D., Principles of Compiler Design, Addison-Wesley, Reading, Massachusetts (1977).

    Google Scholar 

  • Christiansen, H. Syntax, semantics, and implementation strategies for programming languages with powerful abstraction mechanisms, Proc. 18th Hawaii International Conference on System Sciences, pp. 57–66 (1985).

    Google Scholar 

  • Christiansen, H., Parsing and compilation of generative languages, Datalogiske skrifter 3, Roskilde University Centre (1986).

    Google Scholar 

  • Christiansen, H. and Jones, N.D., Control Flow Treatment in a Simple Semantics-Directed Compiler Generator, Proc. Formal Description of Programming Concepts II, pp. 73–97, North-Holland, Amsterdam (1983).

    Google Scholar 

  • Church, A., The Calculi of Lambda-Conversions, Annals of Mathematical Studies 6, Princeton Univ. Press, Princeton, N.J. (1951).

    Google Scholar 

  • Goguen, J.A., Thatcher, J.W., and Wagner, E.G., An initial algebra approach to the specification, correctness, and implementation of abstract data types, Current Trends in Programming Methodology, vol. IV, ed. R.T. Yeh, Prentice-Hall (1979).

    Google Scholar 

  • Knuth, D.E., Semantics of context-free languages, Mathematical Systems Theory 2, pp. 127–145 (1968).

    Google Scholar 

  • Knuth, D.E. and Bendix, P.B., Simple Word Problems in Universal Algebras, Computational Problems in Abstract Algebra, ed. J.Leech, pp. 263–297, Pergamon Press (1970).

    Google Scholar 

  • Layzell, P.J., The History of Macro Processors in Programming Language Extensibility, The Computer Journal, vol. 28, pp. 29–33 (1985).

    Google Scholar 

  • Milne, R. and Strachey, C., A Theory of Programming Language Semantics, Chapman and Hall, London (1976).

    Google Scholar 

  • Mosses, P.D., A constructive approach to compiler correctness, Lecture Notes in Computer Science 85, pp. 449–469, Springer-Verlag, Berlin, Heidelberg (1980).

    Google Scholar 

  • Mosses, P.D., Abstract semantic algebras! Proc. Formal Description of Programming Concepts II, pp. 45–70, North-Holland, Amsterdam, 1983.

    Google Scholar 

  • Pereira, F.C.N. and Warren, D.H.D., Definite Clause Grammars for Language Analysis — A Survey of the Formalism and a Comparison with Augmented Transition Networks, Artificial Intelligence 13, pp. 231–278 (1980).

    Google Scholar 

  • Solntseff, N. and Yezerski, A., A Survey of Extensible Programming Languages, Annual Rewiev in Automatic Programming vol. 7, pp. 267–307 (1974).

    Google Scholar 

  • Triance, J.M. and Layzell, P.J., Macro Processors for Enhancing High-Level Languages — Some Design Principles, The Computer Journal, vol. 28, pp. 34–43, 1985.

    Google Scholar 

  • Watt, D.A., and Madsen, O.L., Extended attribute grammars, DAIMI PB-105, Computer Science Department, Aarhus University (1979).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Harald Ganzinger Neil D. Jones

Rights and permissions

Reprints and permissions

Copyright information

© 1986 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Christiansen, H. (1986). Recognition of generative languages. In: Ganzinger, H., Jones, N.D. (eds) Programs as Data Objects. Lecture Notes in Computer Science, vol 217. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-16446-4_4

Download citation

  • DOI: https://doi.org/10.1007/3-540-16446-4_4

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-16446-3

  • Online ISBN: 978-3-540-39786-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics