Abstract
We consider extending a functional database language to support subtyping, inheritance and method overloading. We do so by extending previous work on type inference with subtypes for the pure λ calculus to cater for structured types, ML-style parametric polymorphism and overloaded function definitions. We attach semantics to overloaded functions by developing a generalisation of best-fit pattern-matching. Although developed for a specific language, our approach is applicable to other functional database languages, for example languages with a functional data model.
Preview
Unable to display preview. Download preview PDF.
References
L. Cardelli. A semantics of multiple inheritance. Information and Computation, 76:138–164, 1988.
G. Castagna. F/⩽&: integrating parametric and “ad hoc” second order polymorphism. In Proc. 4th International Workshop on Database Programming Languages (DBPL-4), New York, pages 338–358. Springer-Verlag, 1993.
P. Canning, W. Cook, W. Hill, W. Olthoff, and J. C. Mitchell. F-bounded polymorphism for object-oriented programming. In Proc. 1989 ACM Conference on Functional Programming Languages and Computer Architecture, pages 273–280, 1989.
L. Cardelli and P. Wegner. On understanding types, data abstraction, and polymorphism. ACM Computing Surveys, 17(4):471–522, 1985.
DOOD. Proceedings of the International Conferences on Deductive and Object-Oriented Databases. 1989 (Kyoto), 1991 (Munich), 1993 (Phoenix, Arizona).
A.J. Field and P.G. Harrison. Functional Programming. Addison Wesley, 1988.
Y.-C. Fuh and P. Mishra. Polymorphic subtype inference: Closing the theory-practice gap. In TAPSOFT'89 — Proc. International Joint Conference on Theory and Practice of Software Development, pages 167–183, 1989. Springer-Verlag LNCS 352.
Y.-C. Fuh and P. Mishra. Type inference with subtypes. Theoretical Computer Science, 70:155–175, 1990.
G. Ghelli. Modelling features of object-oriented languages in second order functional languages with subtypes. Technical Report FIDE/90/3, Dept. of Computing Science, Glasgow University, 1990.
J.-Y. Girard. Une extension de l'interpretation de Gödel à l'analyse, et son application à l'èlimination des coupres dans l'analyse et la thèorie des types. In J. E. Fenstad, editor, 2nd. Scandanavian Logic Symposium, pages 63–92. North-Holland, 1971.
R. Hull and R. King. Semantic database modelling: Survey, applications, and research issues. ACM Computing Surveys, 19(3):201–260, 1987.
L.A. Jategaonkar and J.C. Mitchell. ML with extended pattern matching and subtypes (preliminary version). In Proc. 1988 ACM Conf. on LISP and Functional Programming, pages 198–211, 1988.
P. Lincoln and J. C. Mitchell. Algorithmic aspects of type inference with subtypes. In 19th ACM Symposium on Principles of Programming Languages, pages 293–304, 1992.
J. C. Mitchell. Coercion and type inference (summary). In Proc. 11th ACM Symposium on Principles of Programming Languages, pages 175–185, 1984.
J. C. Mitchell. Type inference with simple subtypes. Journal of Functional Programming, 1(3):245–285, 1991.
S. Peyton-Jones. The Implementation of Functional Programming Languages. Morgan Kaufmann, 1987.
A. Poulovassilis. The implementation of FDL, a functional database language. The Computer Journal, 35(2):119–128, 1992.
A. Poulovassilis and C. Small. A functional programming approach to deductive databases. In Proc. 17th International Conference on Very Large Data Bases, (VLDB 91), Barcelona, pages 491–500, 1991.
A. Poulovassilis and C. Small. Investigation of algebraic query optimisation for database programming languages. In Proc. 20th International Conference on Very Large Data Bases (VLDB 94) Santiago, Chile, pages 415–426, 1994.
Paterson and Wegman. Linear unification. JCSS, pages 158–167, 1978.
J. A. Robinson. A machine orientated logic based on the resolution principle. Journal of the ACM, 12(1):23–41, 1965.
C. Small and A. Poulovassilis. An overview of PFL. In Proc. 3rd International Workshop on Database Programming Languages (DBPL-3), Nafplion, pages 96–110, 1991.
D. Sutton and C. Small. Extending functional database languages to update completeness. In Proc. BNCOD-13 (these proceedings), Manchester, July 1995.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Courtenage, S., Poulovassilis, A. (1995). Combining inheritance and parametric polymorphism in a functional database language. In: Goble, C., Keane, J. (eds) Advances in Databases. BNCOD 1995. Lecture Notes in Computer Science, vol 940. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0000539
Download citation
DOI: https://doi.org/10.1007/BFb0000539
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60100-5
Online ISBN: 978-3-540-49427-0
eBook Packages: Springer Book Archive