Perluette : A compilers producing system using abstract data types

  • Ph. Deschamp
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 137)


Real compilers are usually ad hoc programs. They are costly to write and maintain, and too much complex to be proved correct. This paper presents the compilers producing system Perluette. This system is based upon a formal semantics of programming languages. Programming languages are considered to be algebraic data types. Then it becomes possible to specify and prove their implementations as representations of an algebraic data type into another one.

This formal approach has many advantages ; among these are : the modularity of the compilers specifications ; the independance between the source language and the target language descriptions.

This paper gives an example of compiler specification and describes the implementation of the system in its current state.


Target Language Semantic Function Source Language Source Program Abstract Data Type 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AU 77]
    Aho A.V., Ullman J.D., Principles of Compiler Design Addison-Wesley, Reading, Mass., 1977.Google Scholar
  2. [Bou 80]
    Boullier P., Génération automatique d'analyseurs syntaxiques avec rattrapage d'erreurs. Journées francophones sur la production assistée de Logiciel, Genève, 1980.Google Scholar
  3. [CN 76]
    Courcelle B., Nivat M., Algebraic Families of Interpretations 17th Symposium on Foundations of Computer Science, Houston, 1976.Google Scholar
  4. [Des 80]
    Deschamp Ph., Production de Compilateurs à partir d'une Description Sémantique des Langages de Programmation: le système Perluette. Thèse de Docteur-Ingénieur, INPL, 1980.Google Scholar
  5. [GAU 80]
    Gaudel M.C., Génération et preuve de Compilateurs basées sur une sémantique formelle des langages de programmation. Thèse d'Etat, INPL, 1980.Google Scholar
  6. [Gri 71]
    Gries D., Compiler Construction for Digital Computers. John Wiley and sons, New York, 1971.Google Scholar
  7. [GDM 78]
    Gaudel M.C., Deschamp Ph., Mazaud M., Semantics of procedures as an algebraic abstract data type. Laboria Report no 334, 1978.Google Scholar
  8. [GDM 81]
    Gaudel M.C., Deschamp Ph., Mazaud M., Compilers Construction from high-level specifications. in Automatic Program Construction Techniques, MacMillan Publishing Co, 1981.Google Scholar
  9. [GH 78]
    Guttag J.V., Horning J.J., The Algebraic Specification of Abstract Data Types. Acta Informatica, vol. 10, no1, 1978.Google Scholar
  10. [GH 81]
    Griss M.L., Hearn A.C., A Portable LISP Compiler Software-Practice and Experience, vol. 11, 1981.Google Scholar
  11. [GHM 78]
    Guttag J.V., Horowitz E., Muser D.V. Abstract Data Types and Software Validation CACM 21, no 12, 1978.Google Scholar
  12. [GTW 78]
    Goguen J.A., Thatcher J.W., Wagner E.G., Abstract Data Types as Initial Algebras and the Correctness of Data Representations. in Current Trends in Programming Methodology 4, Prentice Hall, 1978.Google Scholar
  13. [Hoa 69]
    Hoare C.A.R., An Axiomatic Basis of Computer Programming CACM 12, no 10, 1969.Google Scholar
  14. [Knu 68]
    Knuth D.E., Semantics of Context Free Languages, Mathematical Systems Theory 2, 2, 1968.Google Scholar
  15. [Lor 75]
    Lorho B., Semantic Attributes in the system DEETA. Symposium on Implementations of Algorithmic Languages, Novossibirsk, USSR, 1975.Google Scholar
  16. [Mor 73]
    Morris F.L., Advice on Structuring Compilers and proving them correct, Symposium on Principles of Programming Languages, Boston, 1973.Google Scholar
  17. [Ten 76]
    Tennent R.D., The Denotational Semantics of Programming Languages, CACM 19, no 8, 1976.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1982

Authors and Affiliations

  • Ph. Deschamp
    • 1
  1. 1.INRIALe Chesnay

Personalised recommendations