|
ABSTRACT
It is widely agreed that recursive types are inherent in the static typing of the essential mechanisms of object-oriented programming: encapsulation, message passing, subtyping, and inheritance. We demonstrate here that modeling object encapsulation in terms of existential types yields a substantially more straightforward explanation of these features in a simpler calculus without recursive types.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Martin Abadi. Doing without F-bounded quantification. Message to Types electronic mail list, February 1992.
|
| |
2
|
Henk Barendregt. Introduction to generalized type systems. Journal of Functional Programming, 1992. To appear.
|
 |
3
|
Daniel G. Bobrow , Linda G. DeMichiel , Richard P. Gabriel , Sonya E. Keene , Gregor Kiczales , David A. Moon, Common Lisp Object System specification, ACM SIGPLAN Notices, v.23 n.SI, p.1-142, September 1988
[doi> 10.1145/885631.885632]
|
| |
4
|
|
| |
5
|
|
| |
6
|
Kim B. Bruce. A paradigmatic object-oriented language: Design, static typing and semantics. Technical Report CS-92-01, Williams College, January 1992.
|
| |
7
|
|
 |
8
|
Kim Bruce , John C. Mitchell, PER models of subtyping, recursive types and higher-order polymorphism, Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.316-327, January 19-22, 1992, Albuquerque, New Mexico, United States
[doi> 10.1145/143165.143230]
|
| |
9
|
|
 |
10
|
Peter Canning , William Cook , Walter Hill , Walter Olthoff , John C. Mitchell, F-bounded polymorphism for object-oriented programming, Proceedings of the fourth international conference on Functional programming languages and computer architecture, p.273-280, September 11-13, 1989, Imperial College, London, United Kingdom
[doi> 10.1145/99370.99392]
|
| |
11
|
|
 |
12
|
|
| |
13
|
Luca Cardelli. Notes about F~:.. Unpublished notes, October 1990.
|
| |
14
|
Luca Cardelli. Extensible records in a pure calculus of subtyping. Research report 81, DEC Systems Research Center, January 1992.
|
| |
15
|
Luca Cardelli. Typed foundations of objectoriented programming. Tutorial given at POPL '92, January 1992.
|
| |
16
|
|
| |
17
|
|
 |
18
|
|
| |
19
|
Giuseppe Castagna. Strong typing in objectoriented paradigms. Rapport de Recherche LIENS- 92-11, Ecole Normale Supdrieure, Paris, May 1992.
|
| |
20
|
Giuseppe Castagna, Giorgio Ghelli, and Giuseppe Longo. A calculus for overloaded functions and subtyping. Rapport de Recherche LIENS-92-4, Ecole Normale Sup~rieure, Paris, February 1992.
|
| |
21
|
|
| |
22
|
|
 |
23
|
|
| |
24
|
M. Coppo, M. Dezani-Ciancaglini, and B. Venneri. Functional characters of solvable terms. Zeilschrifl fiir Mathematische Logik und Grundlagen der Malhematik, 27:45-58, 1981.
|
| |
25
|
Pierre-Louis Curien and Giorgio Ghelli. Coherence of subsumption. Mathematical Structures in Computer Science, 1992. To appear.
|
 |
26
|
Giorgio Ghelli, A static type system for message passing, Conference proceedings on Object-oriented programming systems, languages, and applications, p.129-145, October 06-11, 1991, Phoenix, Arizona, United States
|
| |
27
|
Jean-Yves Girard. interpretation fonctioneile et dliminalion des coupures de l'arithmd~ique d'ordre supgrieur. PhD thesis, Universit~ Paris VII, 1972.
|
| |
28
|
|
 |
29
|
|
| |
30
|
Martin Hofmann and Benjamin Pierce. An abstract view of objects and subtyping (preliminary report). Technical Report ECS-LFCS-92-226, University of Edinburgh, LFCS, 1992.
|
 |
31
|
|
 |
32
|
|
 |
33
|
John Mitchell , Sigurd Meldal , Neel Madhav, An extension of standard ML modules with subtyping and inheritance, Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.270-278, January 21-23, 1991, Orlando, Florida, United States
[doi> 10.1145/99583.99620]
|
 |
34
|
|
| |
35
|
|
| |
36
|
Benjamin C. Pierce and Robert Pollack. Higherorder subtyping. Unpublished manuscript, August 1992.
|
| |
37
|
Benjamin C. Pierce and David N. Turner. Simple type-theoretic foundations for object-oriented programming. Submitted to the Journal of Functional Programming, August 1992.
|
| |
38
|
Benjamin C. Pierce and David N. Turner. Statically typed multi-methods via partially abstract types. Draft technical teport, September 1992.
|
 |
39
|
|
 |
40
|
|
| |
41
|
John C. Reynolds. User defined types and procedural data structures as complementary approaches to data abstraction. In David Gries, editor, Programming Methodology, A Collection of Articles by IFIP WG2.3, pages 309-317. Springer-Verlag, New York, 1978. Reprinted from S. A. Schuman (ed.), New Advances in Algorithmic Languages 1975, Inst. de Recherche d'Informatique et d'Automatique, Rocquencourt, 1975, pages 157- 168.
|
| |
42
|
John Reynolds. Three approaches to type structure. In Mathematical Foundations of Software Development. Springer-Verlag, 1985. Lecture Notes in Computer Science No. 185.
|
| |
43
|
Edmund Robinson and Robert Tennent. Bounded quantification and record-update problems. Message to Types electronic mail list, October 1988.
|
| |
44
|
Mitchell Wand. Complete type inference for simple objects. In Proceedings of the IEEE Symposium on Logic in Computer Science, ithaca, NY, June 1987.
|
| |
45
|
Mitchell Wand. Corrigendum: Complete type inference for simple objects. In Proceedings of the IEEE Symposium on Logic in Computer Science, 1988.
|
| |
46
|
|
|