Skip to main content

Usability and portability of a compiler writing system

  • Chapter
  • First Online:
Methods of Algorithmic Language Implementation

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

Abstract

This paper presents a system for automating the production of compilers for programming languages. It emphasizes two particular aspects of this system, its usability and its portability. It also gives a comparison with some good competitive systems, and draws conclusions for future work. The system produces compilers written in the programming language Pascal, from a self-contained description of the language to be compiled. This description uses a notation similar to Backus-Naur form for the syntax, and semantic attributes and actions written in Pascal for the semantics. The system is written entirely in Pascal, and is in current use on several computers.

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

  1. Bochmann G. V. Une définition syntaxique et sémantique des langages pour un système d'écriture de compilateurs. Document de travail 30, Département d'Informatique, Université de Montréal, October 1972 (French).

    Google Scholar 

  2. Book E., Sherman S. J. & Schorre D. V. CWIC user's guide. TM-(L)-4185, System Development Corporation, Santa Monica, 1970 and 1971.

    Google Scholar 

  3. Cohen J. (supervisor) et al. A compiler generator. Brandeis Universityn Waltham, Massachusetts, August 1972.

    Google Scholar 

  4. Cohen J. Experience with a conversational parser generating system. Software — practice and experience 5, 2, April 1975, 169–180.

    Google Scholar 

  5. Feldman J. A. & Gries D. Translator writing systems. Communications of the ACM 11, 2, February 1968, 77–113.

    Google Scholar 

  6. Fernandez A. & Héliard J. C. Manuel d'utilisation du programme Synproc. SIM-71-15, Compagnie Internationale d'Informatique, Les Clayes-sous-bois, October 1971 (French).

    Google Scholar 

  7. Feldman J. A. A formal semantics for computer languages and its application in a compiler-compiler. Communications of the ACM 9, 1, January 1966, 3–9.

    Google Scholar 

  8. Graham S. L. & Rhodes S. P. Practical syntactic error recovery. To appear in Communications of the ACM 18, 1975.

    Google Scholar 

  9. Hoare C. A. R. Hints on programming language design. CS-401, Computer Science Department, Stanford University, Stanford, December 1973.

    Google Scholar 

  10. Horning J. J. & Lalonde W. R. Empirical comparison of LR(k) and precedence parsers. ACM Sigplan Notices 13, 8, November 1970, 10–24.

    Google Scholar 

  11. Ichbíah J. D. & Morse S. P. A technique for generating almost optimal Floyd-Evans productions for precedence grammars. Communications of the ACM 13, 8, August 1970, 501–508.

    Google Scholar 

  12. Jensen K. & Wirth N. Pascal user manual and report. Springer Verlag, Berlin, Heidelberg, New York, 1974.

    Google Scholar 

  13. Kamnitzer S. H. Bootstrapping XPL from IBM/360 to Univac 1100. ACM Sigplan Notices 10, 5, May 1975, 14–20.

    Google Scholar 

  14. Knuth D. E. Semantics of context-free languages. Mathematical systems theory 2, 2, February 1968, 127–145.

    Google Scholar 

  15. Koster C. H. A. Affix grammars. In Algol 68 implementation, J. E. L. Peck editor, North-Holland, Amsterdam, 1971, 95–109.

    Google Scholar 

  16. Lalonde W. R. An efficient LALR parser generator. CSRG-2, Computer Systems Research Group, University of Toronto, February 1971.

    Google Scholar 

  17. Larmouth J. Serious Fortran. Software — practice and experience 3, 1973, 87–107 and 197–255.

    Google Scholar 

  18. Lecarme O. & Bochmann G. V. A (truly) usable and portable compiler writing system. In Information Processing 74, J. L. Rosenfeld editor, North-Holland, Amsterdam, 1974, 218–221.

    Google Scholar 

  19. Lecarme O. Un générateur d'analyseurs syntaxiques. Document de travail 27, Département d'Informatique, Université de Montréal, August 1972 (French).

    Google Scholar 

  20. Lecarme O. An experience in structured programming and transferability. ACM Sigplan Notices 8, 9, September 1973, 95–96.

    Google Scholar 

  21. Lecarme O. Un générateur d'analyseurs lexicaux. Document de travail 40, Départment d'Informatique, Université de Montréal, June 1973 (French).

    Google Scholar 

  22. Lecarme O. Un système d'écriture de compilateurs: manuel d'utilisation. Document de travail, Département d'Informatique, Université de Montréal, October 1974 (French).

    Google Scholar 

  23. Lecarme O. Le langage Pascal comme outil d'écriture de programmes transportables. Journées sur l'implantation, l'utilisation et l'extension du langage Pascal, Nice, June 1975 (proceedings to be published, French).

    Google Scholar 

  24. Lecarme O. Fiabilité et transportabilité: l'influence du langage de programmation. Cinquième Ecole d'Eté d'Informatique de l'AFCET, Rabat, July 1975 (proceedings to be published, French).

    Google Scholar 

  25. Ledgard H. F. Production systems: or can we do better than BNF ? Communications of the ACM 17, 2, February 1974, 94–102.

    Google Scholar 

  26. Leach G. & Golde H. Bootstrapping XPL to an XDS Sigma 5 computer. Software — practice and experience 3, 1973, 235–244.

    Google Scholar 

  27. Louis-Seize M. Essais et mise au point d'un système d'écriture de compilateurs. Document de travail 46, Département d'Informatique, Université de Montréal, November 1973 (French).

    Google Scholar 

  28. McKeemann W. M., Horning J. J. & Wortman D. B. A compiler generator. Prentice-Hall, Englewood Cliffs, New Jersey, 1970.

    Google Scholar 

  29. Mickunas M. D. Techniques for compressing bounded-context acceptors. Ph. D. thesis, Purdue University, Lafayette, Indiana, May 1973.

    Google Scholar 

  30. Mickunas M. D. & Schneider V. B. A parser-generating system for constructing compressed compilers. Communications of the ACM 16, 11, November 1973, 669–675.

    Google Scholar 

  31. Poole P. C. & Waite W. M. Portability and adaptability. In Advanced course in software engineering, F. L. Bauer editor, Springer Verlag, Berlin, Heidelberg, New York, 1973, 183–277.

    Google Scholar 

  32. Rhodes S. P. Practical syntactic error recovery for programming languages. Ph. D. thesis, Computer Science Department, University of California, Berkeley, June 1973.

    Google Scholar 

  33. Purdom P. A sentence generator for testing parsers. BIT 12, 3, 1973, 366–375.

    Google Scholar 

  34. Rosen S. A compiler-building system developed by Brooker and Morris. Communications of the ACM 7, 7, July 1964, 403–413.

    Google Scholar 

  35. Schneider V. B. Private communication, September 1973.

    Google Scholar 

  36. Wirth N. The programming language Pascal. Acta Informatica 1, 1971, 35–63.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

A. Ershov C. H. A. Koster

Rights and permissions

Reprints and permissions

Copyright information

© 1977 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Lecarme, O. (1977). Usability and portability of a compiler writing system. In: Ershov, A., Koster, C.H.A. (eds) Methods of Algorithmic Language Implementation. Lecture Notes in Computer Science, vol 47. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-08065-1_3

Download citation

  • DOI: https://doi.org/10.1007/3-540-08065-1_3

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-08065-7

  • Online ISBN: 978-3-540-37510-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics