A semantics of multiple inheritance.
Proc. of the international symposium on Semantics of data types
Encapsulation and inheritance in object-oriented programming languages
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Objects as closures: abstract semantics of object-oriented languages
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Inheritance in smalltalk-80: a denotational definition
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Virtual classes: a powerful mechanism in object-oriented programming
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
A denotational semantics of inheritance and its correctness
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
A record calculus based on symmetric concatenation
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Type inference for record concatenation and multiple inheritance
Information and Computation
The programming language jigsaw: mixins, modularity and multiple inheritance
The programming language jigsaw: mixins, modularity and multiple inheritance
Safe type checking in a statically-typed object-oriented programming language
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Type inference with extended pattern matching and subtypes
Fundamenta Informaticae - Special issue: lambda calculus and type theory
Theoretical aspects of object-oriented programming: types, semantics, and language design
Theoretical aspects of object-oriented programming: types, semantics, and language design
Type inference for records in natural extension of ML
Theoretical aspects of object-oriented programming
Type inference for objects with instance variables and inheritance
Theoretical aspects of object-oriented programming
Static type inference for parametric classes
Theoretical aspects of object-oriented programming
Theoretical aspects of object-oriented programming
Typing record concatenation for free
Theoretical aspects of object-oriented programming
Theoretical aspects of object-oriented programming
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
A syntactic approach to type soundness
Information and Computation
Sound polymorphic type inference for objects
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
Efficient inference of object types
Information and Computation
Simple imperative polymorphism
Lisp and Symbolic Computation - Special issue on state in programming languages (part I)
An interpretation of typed OOP in a language
Lisp and Symbolic Computation - Special issue on state in programming languages (part I)
The development of type systems for object-oriented languages
Theory and Practice of Object Systems - Special issue: type systems
Simple objects for Standard ML
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
ACM Computing Surveys (CSUR)
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Objective ML: an effective object-oriented extension to ML
Theory and Practice of Object Systems - Third workshop on foundations of object-oriented languages (FOOL 3)
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
OOPWORK '86 Proceedings of the 1986 SIGPLAN workshop on Object-oriented programming
An Efficient Unification Algorithm
ACM Transactions on Programming Languages and Systems (TOPLAS)
A Theory of Objects
The Definition of Standard ML
Principal type-schemes for functional programs
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Type inference with simple selftypes is NP-complete
Nordic Journal of Computing
Mixin Modules in a Call-by-Value Setting
ESOP '02 Proceedings of the 11th European Symposium on Programming Languages and Systems
Programming Objects with ML-ART, an Extension to ML with Abstract and Record Types
TACS '94 Proceedings of the International Conference on Theoretical Aspects of Computer Software
A Core Calculus of Classes and Mixins
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
Type systems for object-oriented programming languages
Type systems for object-oriented programming languages
A theory of mixin modules: basic and derived operators
Mathematical Structures in Computer Science
A type system for well-founded recursion
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
iRho: an imperative rewriting calculus
PPDP '04 Proceedings of the 6th ACM SIGPLAN international conference on Principles and practice of declarative programming
Mixin modules in a call-by-value setting
ACM Transactions on Programming Languages and Systems (TOPLAS)
Recursive modules for programming
Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming
From structures and functors to modules and units
Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming
Initializing Mutually Referential Abstract Objects: The Value Recursion Challenge
Electronic Notes in Theoretical Computer Science (ENTCS)
Compilation of extended recursion in call-by-value functional languages
Higher-Order and Symbolic Computation
A calculus for uniform feature composition
ACM Transactions on Programming Languages and Systems (TOPLAS)
Mixin modules and computational effects
ICALP'03 Proceedings of the 30th international conference on Automata, languages and programming
Hi-index | 0.01 |
In a call-by-value language, representing objects as recursive records requires using an unsafe fixpoint. We design, for a core language including extensible records, a type system which rules out unsafe recursion and still supports the construction of a principal type for each typable term. We illustrate the expressive power of this language with respect to object-oriented programming by introducing a sub-language for “mixin-based” programming.