Skip to main content

Meta Languages in Algebraic Compilers

  • Conference paper
  • First Online:
Algebraic Methodology and Software Technology (AMAST 2000)

Part of the book series: Lecture Notes in Computer Science ((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.

This work is funded by Microsoft Research.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. A.V. Aho, R. Sethi, and J.D. Ullman. Compilers — Principles, Techniques, and Tools. Addison-Wesley, Reading, MA, 1986.

    Google Scholar 

  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. 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.

    Article  MATH  Google Scholar 

  4. P.M. Cohn. Universal Algebra. Reidel, London, 1981.

    MATH  Google Scholar 

  5. M. Gordon. Programming Language Theory and its Implementation. Prentice Hall, 1988.

    Google Scholar 

  6. P.J. Higgins. Algebras with a scheme of operators. Mathematische Nachrichten, 27:115–132, 1963/64.

    Article  MATH  MathSciNet  Google Scholar 

  7. D. E. Knuth. Semantics of context-free languages. Mathematical Systems Theory, 2(2):127–145, 1968. Corrections in 5(2):95–96, 1971.

    Article  MATH  MathSciNet  Google Scholar 

  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. T. Rus. Algebraic construction of compilers. Theoretical Computer Science, 90:271–308, 1991.

    MATH  MathSciNet  Google Scholar 

  10. T. Rus. Algebraic processing of programming languages. Theoretical Computer Science, 199(1):105–143, 1998.

    Article  MATH  MathSciNet  Google Scholar 

  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. 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. 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. T. Rus and E. Van Wyk. Using model checking in a parallelizing compiler. Parallel Processing Letters, 8(4):459–471, 1998.

    Article  Google Scholar 

  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. B. Steffen. Generating data flow analysis algorithms from modal specifications. Science of Computer Programming, 21:115–139, 1993.

    Article  MATH  Google Scholar 

  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. E. Van Wyk. Domain specific meta languages. In ACM Symposium on Applied Computing, March 19–21 2000.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Van Wyk, E. (2000). Meta Languages in Algebraic Compilers. In: Rus, T. (eds) Algebraic Methodology and Software Technology. AMAST 2000. Lecture Notes in Computer Science, vol 1816. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45499-3_10

Download citation

  • DOI: https://doi.org/10.1007/3-540-45499-3_10

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67530-3

  • Online ISBN: 978-3-540-45499-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics