Smalltalk-80: the language and its implementation
Smalltalk-80: the language and its implementation
The annotated C++ reference manual
The annotated C++ reference manual
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Strong typing of object-oriented languages revisited
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
F-bounded polymorphism for object-oriented programming
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Eiffel: the language
ACM Transactions on Programming Languages and Systems (TOPLAS)
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
Safe and decidable type checking in an object-oriented language
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Strongtalk: typechecking Smalltalk in a production environment
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
A type system for prototyping languages
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Application of OOP type theory: state, decidability, integration
OOPSLA '94 Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications
A Theory of Primitive Objects - Scond-Order Systems
ESOP '94 Proceedings of the 5th European Symposium on Programming: Programming Languages and Systems
An Operational Semantics for TOOPLE: A Statically-Typed Object-Oriented Programming Language
Proceedings of the 9th International Conference on Mathematical Foundations of Programming Semantics
A Theory of Primitive Objects - Untyped and First-Order Systems
TACS '94 Proceedings of the International Conference on Theoretical Aspects of Computer Software
Using category theory to design implicit conversions and generic operators
Semantics-Directed Compiler Generation, Proceedings of a Workshop
Subtypes vs. where clauses: constraining parametric polymorphism
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
Sound polymorphic type inference for objects
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
Complexity of kernel Fun subtype checking
Proceedings of the first ACM SIGPLAN international conference on Functional programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
Objective ML: a simple object-oriented extension of ML
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Type checking higher-order polymorphic multi-methods
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The ODMG object model: does it make sense?
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Javalight is type-safe—definitely
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Static typing for dynamic messages
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Parametric polymorphism for Java: a reflective solution
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Contraint-based polymorphism in Cecil: towards a practical and static type system
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The design of a class mechanism for Moby
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
Correspondence polymorphism for object-oriented languages
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Type-checking OQL queries in the ODMG type systems
ACM Transactions on Database Systems (TODS)
An efficient class and object encoding
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A semantical approach to method-call interception
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Objects and classes in Algol-like languages
Information and Computation - FOOL V
Unifying object-oriented programming with typed functional programming
ASIA-PEPM '02 Proceedings of the ASIAN symposium on Partial evaluation and semantics-based program manipulation
On type systems for object-oriented database programming languages
ACM Computing Surveys (CSUR)
Type-safe convariant specialization with generalized matching
Information and Computation - FOOL VII
Machine-Checking the Java Specification: Proving Type-Safety
Formal Syntax and Semantics of Java
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
A Core Calculus of Classes and Mixins
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
Behavioral Compatibility of Self-Typed Theories
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
On Variance-Based Subtyping for Parametric Types
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
Bounded Polymorphism for Extensible Objects
TYPES '98 Selected papers from the International Workshop on Types for Proofs and Programs
Inheriting and Modifying Behavior
TOOLS '97 Proceedings of the Tools-23: Technology of Object-Oriented Languages and Systems
Typed operational semantics for higher-order subtyping
Information and Computation
Intersection types and bounded polymorphism
Mathematical Structures in Computer Science
Proceedings of the 2004 ACM symposium on Applied computing
Scalable extensibility via nested inheritance
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Essential language support for generic programming
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Z0 - a tiny experimental language
ACM SIGPLAN Notices
Scalable component abstractions
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Variant parametric types: A flexible subtyping scheme for generics
ACM Transactions on Programming Languages and Systems (TOPLAS)
J&: nested intersection for scalable software composition
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Type-based publish/subscribe: Concepts and experiences
ACM Transactions on Programming Languages and Systems (TOPLAS)
On Problems in Polymorphic Object-Oriented Languages With Self Types and Matching
Fundamenta Informaticae
Typed parametric polymorphism for aspects
Science of Computer Programming - Special issue: Foundations of aspect-oriented programming
Variant path types for scalable extensibility
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Genericity in Java: persistent and database systems implications
The VLDB Journal — The International Journal on Very Large Data Bases
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Matching ThisType to subtyping
Proceedings of the 2009 ACM symposium on Applied Computing
Static type inference for Ruby
Proceedings of the 2009 ACM symposium on Applied Computing
Safer typing of complex API usage through Java generics
PPPJ '09 Proceedings of the 7th International Conference on Principles and Practice of Programming in Java
Electronic Notes in Theoretical Computer Science (ENTCS)
A language for generic programming in the large
Science of Computer Programming
JavaGI: The Interaction of Type Classes with Interfaces and Inheritance
ACM Transactions on Programming Languages and Systems (TOPLAS)
Reconciling virtual classes with genericity
JMLC'06 Proceedings of the 7th joint conference on Modular Programming Languages
Towards type inference for javascript
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
On Problems in Polymorphic Object-Oriented Languages With Self Types and Matching
Fundamenta Informaticae
Hi-index | 0.00 |
PolyTOIL is a new statically-typed polymorphic object-oriented programming language which is provably type-safe. By separating the definitions of subtyping and inheritance, providing a name for the type of self, and carefully defining the type-checking rules, we have obtained a language which is very expressive while supporting modular type-checking of classes. The matching relation on types, which is related to F-bounded quantification, is used both in stating type-checking rules and expressing the bounds on type parameters for polymorphism. The design of PolyTOIL is based on a careful formal definition of type-checking rules and semantics. A proof of type safety is obtained with the aid of a subject reduction theorem.