Skip to main content

A module system for meta-programming

  • Conference paper
  • First Online:
  • 163 Accesses

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

Abstract

The need for modules in the development of large programs is well known while meta-programming is widely regarded as a simple yet powerful methodology for knowledge representation and reasoning. Thus if we wish to reason about large knowledge bases, it is desirable that meta-programs should be designed to reason about modular programs. This paper describes a module system which allows the modules to be parametrised over the language symbols exported by the module and shows that this provides a natural environment for meta-programming where both the meta and object programs enjoy the same parametrised module system.

This work is supported by SERC Grant GR/H/79862

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J. Barklund. Metaprogramming in logic. Technical Report UPMAIL Technical Report 80, Department of Computer Science, University of Uppsala, Sweden, 1994. to be published in Encyclopedia of Computer Science and Technology, A. Kent and J.G. Williams (eds.), Marcell Dekker, New York, 1994/5.

    Google Scholar 

  2. K.A. Bowen and R.A. Kowalski. Amalgamating language and metalanguage in logic programming. In K.L. Clark and S.-å. TÄrnlund, editors, Logic Programming, pages 153–172. Academic Press, 1982.

    Google Scholar 

  3. A. Brogi and S. Contiero. Gödel as a meta-language for composing logic programs. In F. Turini, editor, Meta-Programming in Logic, Proceedings of the 4th International Workshop, Pisa, Italy. Springer-Verlag, 1994.

    Google Scholar 

  4. A. Brogi, P. Mancarella, D. Pedreschi, and F. Turini. Meta for modularising logic programming. In A. Pettorossi, editor, Proceedings of the Third Workshop on Meta-programming in Logic, pages 105–119. Springer-Verlag, 1992.

    Google Scholar 

  5. I. Cervesato and G. F. Rossi. Logic meta-programming facilities in 'LOG. In A. Petterossi, editor, Proceedings of the Third Workshop on Meta-programming in Logic, pages 148–161. Springer-Verlag, 1992.

    Google Scholar 

  6. P. M. Hill and J. Gallagher. Meta-programming in logic programming. Technical Report 94.22, School of Computer Studies, University of Leeds, 1994. To be published in Handbook of Logic in Artificial Intelligence and Logic Programming, Vol. 5, Oxford Science Publications, Oxford University Press.

    Google Scholar 

  7. P.M. Hill. A parameterised module system for constructing typed logic programs. In R. Bajcsy, editor, Proceedings of 13th International Joint Conference on Artificial Intelligence, Chambéry, France, pages 874–880. Morgan-Kaufmann, 1993.

    Google Scholar 

  8. P.M. Hill and J.W. Lloyd. Analysis of meta-programs. In H.D. Abramson and M.H. Rogers, editors, Meta-Programming in Logic Programming, pages 23–52. MIT Press, 1989. Proceedings of the Meta88 Workshop, June 1988.

    Google Scholar 

  9. P.M. Hill and J.W. Lloyd. The Gödel Programming Language. MIT Press, 1994.

    Google Scholar 

  10. J.W. Lloyd. Foundations of Logic Programming. Springer-Verlag, 2nd edn., 1987.

    Google Scholar 

  11. B. Martens and D. De Schreye. A perfect Herbrand semantics for untyped vanilla meta-programming. In K. Apt, editor, Proceedings of the Joint International Conference on Logic Programming, Washington, USA, pages 511–525, 1992.

    Google Scholar 

  12. B. Martens and D. De Schreye. Why untyped non-ground meta-programming is not (much of) a problem. Technical Report CW 159, Department of Computer Science, Katholieke Universiteit Leuven, 1992.

    Google Scholar 

  13. L. Sterling and E. Shapiro. The Art of Prolog. MIT Press, 1986.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Laurent Fribourg Franco Turini

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hill, P.M. (1994). A module system for meta-programming. In: Fribourg, L., Turini, F. (eds) Logic Program Synthesis and Transformation — Meta-Programming in Logic. META LOPSTR 1994 1994. Lecture Notes in Computer Science, vol 883. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58792-6_24

Download citation

  • DOI: https://doi.org/10.1007/3-540-58792-6_24

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics