Skip to main content

High-level semantics

An integrated approach to programming language semantics and the specification of implementations

  • Part VI New Directions
  • Conference paper
  • First Online:
Mathematical Foundations of Programming Language Semantics (MFPS 1987)

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

Abstract

In the course of implementing a semantics directed compiler generator we have developed high-level semantics, a new style of semantic definition which overcomes fundamental problems concerning the specification techniques used in traditional denotational semantics. In the past, these problems have precluded the generation of realistic compilers from traditional denotational specifications. By contrast, high-level semantic specifications are suitable for both defining the functional semantics of programming languages, and describing realistic compiler implementations which are automatically generated from the semantics.

In an earlier paper we described the MESS system, a prototype implementation of a compiler generator incorporating the principles of high-level semantics. Here, we summarize the salient characteristics of our methodology. A comprehensive overview of high-level semantics and the MESS compiler generator can be found in the dissertation of the second author.

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. Bird, P. An implementation of a code generator specification language for table driven code generators. Proc. SIGPLAN '82 Symp. Compiler Construction, SIGPLAN Notices 17, 6 (June 1982), 44–55.

    Article  Google Scholar 

  2. Bodwin, J., Bradley, L., Kanda, K., Litle, D., and Pleban, U. Experience with a compiler generator based on denotational semantics. Proc. SIGPLAN '82 Symp. Compiler Construction, SIGPLAN Notices 17, 6 (June 1982), 216–229.

    Article  Google Scholar 

  3. Clinger, W., Friedman, D. P., and Wand, M. A scheme for a higher-level semantic algebra. US-French Seminar on the Application of Algebra to Language Definition and Compilation, Fontainebleau, France, June 1982.

    Google Scholar 

  4. Ganapathi, M. Retargetable code generation and optimization using attribute grammars. Ph. D. Thesis, Tech. Rep. 406, Computer Science Department, University of Wisconsin-Madison, 1980.

    Google Scholar 

  5. Glanville, R. S., and Graham, S. A new method for compiler code generation. Conf. Rec. 5th Ann. ACM Symp. Principles of Programming Languages, Tucson, AZ, Jan. 1978, 231–240.

    Google Scholar 

  6. Gordon, M. J. C. The denotational description of programming languages: An introduction. Springer-Verlag, New York, 1979.

    Google Scholar 

  7. Jones, N. D., and Christiansen, H. Control flow treatment in a simple semantics-directed compiler generator. Formal Description of Programming Concepts II, IFIP IC-2 Working Conference, North Holland, Amsterdam, 1982.

    Google Scholar 

  8. Lee, P. The automatic generation of realistic compilers from high-level semantic descriptions. Ph. D. Dissertation, The University of Michigan, April 1987.

    Google Scholar 

  9. Lee, P., and Pleban, U. F. The automatic generation of realistic compilers from high-level semantic descriptions: A progress report. Technical Report CRL-TR-13-86, The University of Michigan Computing Research Laboratory, June 1986.

    Google Scholar 

  10. Lee, P., and Pleban, U. F. On the use of LISP in implementing denotational semantics. Proc. 1986 ACM Conf. LISP and Functional Programming, Cambridge, MA, August 1986, 233–248.

    Google Scholar 

  11. Lee, P., and Pleban, U. F. A realistic compiler generator based on high-level semantics. Proc. 14th Annual ACM SIGACT/SIGPLAN Symposium on Principles of Programming Languages, Munich, W.-Germany, January 1987, 284–295.

    Google Scholar 

  12. Milne, R. E., and Strachey, C. A theory of programming language semantics. Chapman and Hall, London, 1976.

    Google Scholar 

  13. Milner, R. The standard ML core language. Polymorphism II, 2 (Oct. 1985).

    Google Scholar 

  14. Milos, D., Pleban, U., and Loegel, G. Direct implementation of compiler specifications, or: The Pascal P-code compiler revisited. Conf. Rec. 11th Ann. Symp. Principles of Programming Languages, Salt Lake City, UT, January 1984, 196–207.

    Google Scholar 

  15. Mosses, P. SIS—Semantics implementation system. Tech. Rep. DAIMI MD-30, Computer Science Dept., Aarhus Univ., Aug. 1979.

    Google Scholar 

  16. Mosses, P. Abstract semantic algebras! In: D. Bjoerner (Ed.), Formal description of programming concepts II. North Holland, Amsterdam, 1982, 63–88.

    Google Scholar 

  17. Mosses, P. A basic abstract semantic algebra. In: Semantics of data type, Lecture Notes in Computer Science, Vol. 173. Springer-Verlag, Berlin, 1984, 87–107.

    Google Scholar 

  18. Mosses, P. Modularity in action semantics (Preliminary Version). Presented at a Workshop on Semantic Issues in Human and Computer Languages, Half Moon Bay, CA, March 1987.

    Google Scholar 

  19. Mosses, P., and Watt, D. A. The use of action semantics. Technical Report DAIMI PB-217, Aarhus University, Aarhus, Denmark, August 1986.

    Google Scholar 

  20. Mosses, P., and Watt, D. A. Pascal: Action semantics. Draft — Version 0.3). Computer Science Dept., Aarhus University, Aarhus, Denmark, Sept. 1986.

    Google Scholar 

  21. Nielson, H. R., and Nielson, F. Semantics directed compiling for functional languages. Proc. 1986 ACM Conf. LISP and Functional Programming, 249–257.

    Google Scholar 

  22. Paulson, L. A compiler generator for semantic grammars. Ph. D. Dissertation, Stanford University, December 1981.

    Google Scholar 

  23. Paulson, L. A semantics-directed compiler generator. Conf. Rec. 9th Ann. ACM Symp. Principles of Programming Languages, Albuquerque, NM, Jan. 1982, 224–239.

    Google Scholar 

  24. Pleban, U. Formal semantics and compiler generation. In: Morgenbrod, H., and Sammer, W. (Eds.) Programmierumgebungen und Compiler. Teubner-Verlag, Stuttgart, 1984, 145–161.

    Google Scholar 

  25. Pleban, U. Compiler prototyping using formal semantics. Proc. SIGPLAN '84 Symp. Compiler Construction, SIGPLAN Notices 19, 6 (June 1984), 94–105.

    Article  Google Scholar 

  26. Royer, V. Transformations of denotational semantics in semantics directed compiler generation. Proc. SIGPLAN '86 Symp. Compiler Construction, SIGPLAN Notices 21, 6 (June 1986), 68–73.

    Article  Google Scholar 

  27. Schmidt, D. A. Denotational Semantics. Allyn & Bacon, 1986.

    Google Scholar 

  28. Sethi, R. Control flow aspects of semantics directed compiling. Tech. Rep. 98, Bell Labs., 1981; also in Proc. SIGPLAN '82 Symp. Compiler Construction, SIGPLAN Notices 17, 6 (June 1982), 245–260.

    Article  Google Scholar 

  29. Stoy, J. E. Denotational semantics: The Scott-Strachey approach to programming language theory. MIT Press, Cambridge, 1977.

    Google Scholar 

  30. Wand, M. Deriving target code as a representation of continuation semantics. ACM TOPLAS 4, 3 (July 1982), 496–517.

    Article  Google Scholar 

  31. Wand, M. A semantic prototyping system. Proc. SIGPLAN '84 Symp. Compiler Construction, SIGPLAN Notices 19, 6 (June 1984), 213–221.

    Google Scholar 

  32. Watt, D. A. Modular language definitions. Rep. CSC/82/R3, Computing Science Department, University of Glasgow, Oct. 1982.

    Google Scholar 

  33. Watt, D. A. Executable semantic descriptions. Rep. CSC/84/R2, Computing Science Department, University of Glasgow, Oct. 1984; also Software-Practice and Experience 16, 1 (Jan. 1986), 13–43.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

M. Main A. Melton M. Mislove D. Schmidt

Rights and permissions

Reprints and permissions

Copyright information

© 1988 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Pleban, U.F., Lee, P. (1988). High-level semantics. In: Main, M., Melton, A., Mislove, M., Schmidt, D. (eds) Mathematical Foundations of Programming Language Semantics. MFPS 1987. Lecture Notes in Computer Science, vol 298. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-19020-1_29

Download citation

  • DOI: https://doi.org/10.1007/3-540-19020-1_29

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-19020-2

  • Online ISBN: 978-3-540-38920-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics