Advertisement

Meta Languages in Algebraic Compilers

  • Eric Van Wyk
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1816)

Abstract

Algebraic compilers provide a powerful and convenient mechanism for specifying language translators. With each source language operation one associates a computation for constructing its target language image; these associated computations, called derived operations, are expressed in terms of operations from the target language. Some-times the target language operations are not powerful enough to specify the required computations and one may then need to extend the target language algebras with more computationally expressive operations. A better solution is to package them in a meta language which can be automatically composed with the target language operations to ensure that all operations needed or desired for performing a translation are provided. In this paper, we show how imperative and functional meta languages can be composed with a target language in an example which implements a temporal logic model checker as an algebraic compiler and show how meta languages can be seen as components to be combined with a source and target language to generate an algebraic compiler.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    A.V. Aho, R. Sethi, and J.D. Ullman. Compilers — Principles, Techniques, and Tools. Addison-Wesley, Reading, MA, 1986.Google Scholar
  2. 2.
    R. Backhouse, P. Jansson, J. Jeuring, and L. Meertens. Generic programming — an introduction. In LNCS, volume 1608, pages 28–115. Springer-Verlag, 1999. Revised version of lecture notes for AFP’98.Google Scholar
  3. 3.
    E.M. Clarke, E.A. Emerson, and A.P. Sistla. Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM TOPLAS, 8(2):244–263, 1986.zbMATHCrossRefGoogle Scholar
  4. 4.
    P.M. Cohn. Universal Algebra. Reidel, London, 1981.zbMATHGoogle Scholar
  5. 5.
    M. Gordon. Programming Language Theory and its Implementation. Prentice Hall, 1988.Google Scholar
  6. 6.
    P.J. Higgins. Algebras with a scheme of operators. Mathematische Nachrichten, 27:115–132, 1963/64.zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    D. E. Knuth. Semantics of context-free languages. Mathematical Systems Theory, 2(2):127–145, 1968. Corrections in 5(2):95–96, 1971.zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    S. Kripke. Semantical analysis of modal logic i: Normal modal propositional calculi. Zeitschrift f. Math. Logik und Grundlagen d. Math., 9, 1963.Google Scholar
  9. 9.
    T. Rus. Algebraic construction of compilers. Theoretical Computer Science, 90:271–308, 1991.zbMATHMathSciNetGoogle Scholar
  10. 10.
    T. Rus. Algebraic processing of programming languages. Theoretical Computer Science, 199(1):105–143, 1998.zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    T. Rus, T. Halverson, E. Van Wyk, and R. Kooima. An algebraic language processing environment. In Michael Johnson, editor, LNCS 1349, pages 581–585, Sydney, Australia, 1997.Google Scholar
  12. 12.
    T. Rus and E. Van Wyk. Algebraic implementation of model checking algorithms. In Third AMAST Workshop on Real-Time Systems, Proceedings, pages 267–279, March 6 1996. Available from URL: http://www.comlab.ox.ac.uk/oucl/work/eric.van.wyk/
  13. 13.
    T. Rus and E. Van Wyk. Integrating temporal logics and model checking algorithms. In Fourth AMAST Workshop on Real-Time Systems, Proceedings, LNCS 1231. Springer-Verlag, May 21 1997.Google Scholar
  14. 14.
    T. Rus and E. Van Wyk. Using model checking in a parallelizing compiler. Parallel Processing Letters, 8(4):459–471, 1998.CrossRefGoogle Scholar
  15. 15.
    C. Simonyi. Intentional programming: Innovation in the legacy age. Presented at IFIP Working group 2.1., 1996. Available from URL: http://www.research.microsoft.com/research/ip/
  16. 16.
    B. Steffen. Generating data flow analysis algorithms from modal specifications. Science of Computer Programming, 21:115–139, 1993.zbMATHCrossRefGoogle Scholar
  17. 17.
    E. Van Wyk. Semantic Processing by Macro Processors. PhD thesis, The University of Iowa, Iowa City, Iowa, 52240 USA, July 1998.Google Scholar
  18. 18.
    E. Van Wyk. Domain specific meta languages. In ACM Symposium on Applied Computing, March 19–21 2000.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • Eric Van Wyk
    • 1
  1. 1.Oxford University Computing LaboratoryOxford

Personalised recommendations