Skip to main content

Coupled context-free grammar as a programming paradigm

  • Grammars
  • Conference paper
  • First Online:
  • 166 Accesses

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

Abstract

The formal grammar: Coupled Context-Free Grammar (CCFG) is interpreted as a programming system, in which context-free grammars (CFGs) represent input/output data structures and a CCFG, called a CCFG program, represents the relation between the input/output data structures. The mathematical properties of logic programs and CCFG programs are dual with each other. An arbitrary logic program can be automatically transformed into the equivalent CCFG program and vice versa. Because a data structure of the CCFG program is expressed as the CFG, the execution mechanisms of CCFG programs are the extensions of the parsing techniques for the CFGs.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aho, A. V. and Ullman, J. D.: The Theory of Parsing, Translation, and Compiling, Volume I: Parsing, Prentice-Hall (1972).

    Google Scholar 

  2. Deransart, P. and Maluszynski, J.: A Grammatical View of Logic Programming, in this volume.

    Google Scholar 

  3. Ganzinger, H. and Giegerich, R.: Attribute Coupled Grammars, Proc. ACM SIGPLAN '84 Symposium on Compiler Construction, SIGPLAN Notices, Vol.19, No.6 (1984).

    Google Scholar 

  4. Giegerich, R.: Composition and Evaluation of Attribute Coupled Grammars, Acta Informatica, Vol.25, pp.355–423 (1988).

    Google Scholar 

  5. Clocksin, W. F. and Mellish, C. S.: Programming in Prolog, Springer-Verlag (1981).

    Google Scholar 

  6. Jackson, M. A.: Principles of Program Design, Academic Press (1975).

    Google Scholar 

  7. Knuth, D. E.: Semantics of Context-Free Languages, Math. Syst. Th. Vol.2, NO.2 (1968), correct ibid. Vol.5, No.1 (1971).

    Google Scholar 

  8. Lloyd, J. W.: Foundation of Logic Programming, Springer-Verlag (1984).

    Google Scholar 

  9. Nakata, I. and Sassa, M.: Regular Expressions with semantics and their Application to Data Structure Directed Programs, Computer Software, Vol.3, No.1, pp.47–56 (1986).(In Japanese)

    Google Scholar 

  10. Nakata, I. and Yamashita, Y.: Program transformations in Coupled Context-Free Grammar, Computer Software, Vol.5, NO.2 (1988). (In Japanese)

    Google Scholar 

  11. Pagan, F. G.: Formal Specification of Programming Languages, Prentice-Hall (1981).

    Google Scholar 

  12. van Wijnggaarden, A.: Revised Report on the Algorithmic Language ALGOL 68, Springer-Verlag (1976).

    Google Scholar 

  13. Yamashita, Y. and Nakata, I.: Programming in Coupled Context-Free Grammars, Technical Report ISE-TR-88-70, University of Tsukuba (1988).

    Google Scholar 

  14. Yamashita, Y. and Nakata, I.: The Least Fixpoint Semantics of CCFG Programs, an internal document (1987).

    Google Scholar 

  15. Yamashita, Y. and Nakata, I.: On the Relation between CCFG Programs and Logic Programs, Technical Report ISE-TR-88-71, University of Tsukuba (1988).

    Google Scholar 

  16. Yamashita, Y. and Nakata, I.: The Unfold/Fold Program Transformation in CCFG Programs, Technical Report ISE-TR-88-72, University of Tsukuba (1988).

    Google Scholar 

  17. Yamashita, Y. and Nakata, I.: The Execution Methods in the Programming Language Based Coupled Context-Free Grammar, Proc. 28-th Programming Simposium, Japan Information Processing Society (1987). (In Japanese).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

P. Deransart B. Lorho J. Małuszyński

Rights and permissions

Reprints and permissions

Copyright information

© 1989 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Yamashita, Y., Nakata, I. (1989). Coupled context-free grammar as a programming paradigm. In: Deransart, P., Lorho, B., Małuszyński, J. (eds) Programming Languages Implementation and Logic Programming. PLILP 1988. Lecture Notes in Computer Science, vol 348. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-50820-1_45

Download citation

  • DOI: https://doi.org/10.1007/3-540-50820-1_45

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-50820-5

  • Online ISBN: 978-3-540-46092-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics