Smalltalk-80: the language and its implementation
Smalltalk-80: the language and its implementation
On understanding types, data abstraction, and polymorphism
ACM Computing Surveys (CSUR) - The MIT Press scientific computation series
Abstract types have existential type
ACM Transactions on Programming Languages and Systems (TOPLAS)
A semantics of multiple inheritance
Information and Computation - Semantics of Data Types
Objects as closures: abstract semantics of object-oriented languages
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Structural subtyping and the notion of power type
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Inheritance in smalltalk-80: a denotational definition
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Type checking records and variants in a natural extension of ML
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Type inference for record concatenatiOn and multiple inheritance
Proceedings of the Fourth Annual Symposium on Logic in computer science
A modest model of records, inheritance, and unbounded quantification
Information and Computation - Selections from 1988 IEEE symposium on logic in computer science
Toward a typed foundation for method specialization and inheritance
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
F-bounded polymorphism for object-oriented programming
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
An extension of standard ML modules with subtyping and inheritance
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the fifth international conference on Mathematical foundations of programming semantics
A static type system for message passing
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
An introduction to object-oriented programming
An introduction to object-oriented programming
PER models of subtyping, recursive types and higher-order polymorphism
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Programming with intersection types and bounded polymorphism
Programming with intersection types and bounded polymorphism
Classes versus prototypes in object-oriented languages
ACM '86 Proceedings of 1986 ACM Fall joint computer conference
The Equivalence of Two Semantic Definitions for Inheritance in Object-Oriented Languages
Proceedings of the 7th International Conference on Mathematical Foundations of Programming Semantics
An Extension of System F with Subtyping
TACS '91 Proceedings of the International Conference on Theoretical Aspects of Computer Software
Object-Oriented Programming Versus Abstract Data Types
Proceedings of the REX School/Workshop on Foundations of Object-Oriented Languages
A denotational semantics of inheritance
A denotational semantics of inheritance
Typing the specialization interface
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Decidable bounded quantification
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A graph model for object oriented programming
ACM SIGPLAN Notices
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Simple objects for Standard ML
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
Compositional references for stateful functional programming
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
Objective ML: a simple object-oriented extension of ML
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An efficient class and object encoding
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
PolyTOIL: A type-safe polymorphic object-oriented language
ACM Transactions on Programming Languages and Systems (TOPLAS)
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
An Introduction to Functional Nets
Applied Semantics, International Summer School, APPSEM 2000, Caminha, Portugal, September 9-15, 2000, Advanced Lectures
Higher-order subtyping and its decidability
Information and Computation
Extensible objects without labels
ACM Transactions on Programming Languages and Systems (TOPLAS)
Difunctorial Semantics of Object Calculus
Electronic Notes in Theoretical Computer Science (ENTCS)
Hi-index | 0.00 |
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.