The semantic treatment of polymorphic specification languages

  • Dieter Nazareth
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1139)


Polymorphic type systems combined with type inference are commonly used in functional programming languages. Specification languages aiming at the development of functional programs should therefore also include these concepts. In this paper we investigate the semantic treatment of polymorphism in axiomatic specification languages. We present a concept of model that is neither based on some intermediate language, nor on a particular sort inference algorithm. We investigate the semantic relations between different sort derivations of a specification and show that syntactically more general derivations have less models. This result allows us to define an equivalent model concept based on some most general sort derivation of a specification.


polymorphic type system axiomatic specification algebraic semantics 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    L. Damas and R. Milner. Principle Type-Schemes for Functional Programs. In Proceedings of the 9th Annual Symposium on Principles of Programming Languages, pages 207–212, 1982.Google Scholar
  2. 2.
    M. Erwig. Specifying type systems with multi-level order-sorted algebra. In 3rd Int. Conf. on Algebraic Methodology and Software Technology, pages 177–184, 1993.Google Scholar
  3. 3.
    R. Grosu and F. Regensburger. The Logical Framework of Spectrum. Technical Report TUM-I9402, Institut für Informatik, Technische Universität München, 1994.Google Scholar
  4. 4.
    C. A. Gunter. Semantics of Programming Languages: Structures and Techniques. MIT Press, 1992.Google Scholar
  5. 5.
    R. Hindley. The Principle Type-Scheme of an Object in Combinatory Logic. Trans. Am. Math. Soc., 146:29–60, December 1969.Google Scholar
  6. 6.
    M. P. Jones. Qualified Types: Theory and Practice. Technical Monograph PRG-106, Oxford University Computing Laboratory, Programming Research Group, July 1992.Google Scholar
  7. 7.
    M.P. Jones. A system of constructor classes: overloading and implicit higher-order polymorphism. In Proc. of the 6th ACM Conference on Functional Programming Languages and Computer Architecture, pages 43–52. ACM Press, 1993.Google Scholar
  8. 8.
    J. Leszczylowski and M. Wirsing. Polymorphism, parameterization and typing: An algebraic specification perspective. In Symp. on Theoretical Aspects of Computer Science, volume 480 of Lecture Notes in Computer Science, pages 1–15. Springer, 1991.Google Scholar
  9. 9.
    K. Meinke. Equational Specification of Abstract Types and Combinators. In 5th Workshop on Computer Science Logic, volume 626 of Lecture Notes in Computer Science, pages 257–271, 1992.Google Scholar
  10. 10.
    R. Milner. A Theory of Type Polymorphism in Programming. Journal of Computer and System Sciences, 17:348–375, 1978.Google Scholar
  11. 11.
    J.C. Mitchell. Type Systems for Programming Languages. In Handbook of Theoretical Computer Science, pages 365–458. Elsevier Science Publisher, 1990.Google Scholar
  12. 12.
    D. Nazareth. A Polymorphic Sort System for Axiomatic Specification Languages. PhD thesis, Technische Universität München, 1995. Technical Report TUM-I9515.Google Scholar
  13. 13.
    A. Poigné. On Specifications, Theories and Models with Higher Order Types. Information and Control, 68:1–46, 1986.Google Scholar
  14. 14.
    Z. Qian. Extensions of Order-Sorted Algebraic Specifications: Parameterization, Higher-Order Functions and Polymorphism, PhD thesis, Universität Bremen, 1991.Google Scholar
  15. 15.
    Franz Regensburger. HOLCF: Eine konservative Erweiterung von HOL um LCF. PhD thesis, Technische Universität München, 1994.Google Scholar
  16. 16.
    P. Wadler and S. Blott. How to Make Ad-hoc Polymorphism Less Ad hoc. In 16th ACM Symposium on Principles of Programming Languages, pages 60–76, 1989.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Dieter Nazareth
    • 1
  1. 1.Institut für InformatikTechnische Universität MünchenMünchenGermany

Personalised recommendations