Abstract
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.
Preview
Unable to display preview. Download preview PDF.
References
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.
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.
R. Grosu and F. Regensburger. The Logical Framework of Spectrum. Technical Report TUM-I9402, Institut für Informatik, Technische Universität München, 1994.
C. A. Gunter. Semantics of Programming Languages: Structures and Techniques. MIT Press, 1992.
R. Hindley. The Principle Type-Scheme of an Object in Combinatory Logic. Trans. Am. Math. Soc., 146:29–60, December 1969.
M. P. Jones. Qualified Types: Theory and Practice. Technical Monograph PRG-106, Oxford University Computing Laboratory, Programming Research Group, July 1992.
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.
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.
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.
R. Milner. A Theory of Type Polymorphism in Programming. Journal of Computer and System Sciences, 17:348–375, 1978.
J.C. Mitchell. Type Systems for Programming Languages. In Handbook of Theoretical Computer Science, pages 365–458. Elsevier Science Publisher, 1990.
D. Nazareth. A Polymorphic Sort System for Axiomatic Specification Languages. PhD thesis, Technische Universität München, 1995. Technical Report TUM-I9515.
A. Poigné. On Specifications, Theories and Models with Higher Order Types. Information and Control, 68:1–46, 1986.
Z. Qian. Extensions of Order-Sorted Algebraic Specifications: Parameterization, Higher-Order Functions and Polymorphism, PhD thesis, Universität Bremen, 1991.
Franz Regensburger. HOLCF: Eine konservative Erweiterung von HOL um LCF. PhD thesis, Technische Universität München, 1994.
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.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Nazareth, D. (1996). The semantic treatment of polymorphic specification languages. In: Hanus, M., Rodríguez-Artalejo, M. (eds) Algebraic and Logic Programming. ALP 1996. Lecture Notes in Computer Science, vol 1139. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61735-3_22
Download citation
DOI: https://doi.org/10.1007/3-540-61735-3_22
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61735-8
Online ISBN: 978-3-540-70672-4
eBook Packages: Springer Book Archive