Citation Connor R (1998) Existentially quantified procedures: A mechanism for abstracting type in dynamic typing constructs. In: Cluet S & Hull R (eds.) Database Programming Languages: 6th International Workshop, DBPL-6 Estes Park, Colorado, USA, August 18–20, 1997 Proceedings. Lecture Notes in Computer Science, 1369. Database Programming Languages: 6th International Workshop, DBPL-6, Estes Park, CO, USA, 18.08.1997-20.08.1997. Berlin Heidelberg: Springer Verlag, pp. 97-117. https://doi.org/10.1007/3-540-64823-2_7
Abstract Existential quantification of procedures is introduced as a mechanism for languages with dynamic typing. It allows abstraction over types whose representations require to be manipulated at run time. Universal quantification, the mechanism normally associated with procedural type abstraction, is shown to be unsuitable for this style of abstraction. For many such procedures only a single type specialisation is correct, hence the analogy with existential quantification from predicate logic. For any invocation of an existentially quantified procedure, the run-time system will require to maintain a single type representation for which the abstracted type stands. Existential quantification represents a class of ad hoc polymorphism, where operations over values of the abstracted type may behave differently according to the actual specialisation.
Journal Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)