Smalltalk-80: the language and its implementation
Smalltalk-80: the language and its implementation
A kernel language for abstract data types and modules.
Proc. of the international symposium on Semantics of data types
A semantics of multiple inheritance.
Proc. of the international symposium on Semantics of data types
Understanding Russell–a first attempt
Proc. of the international symposium on Semantics of data types
The semantics of second order polymorphic lambda calculus.
Proc. of the international symposium on Semantics of data types
Type inference and type containment.
Proc. of the international symposium on Semantics of data types
GALILEO: a strongly-typed, interactive conceptual language
ACM Transactions on Database Systems (TODS)
Programming in MODULA-2 (3rd corrected ed.)
Programming in MODULA-2 (3rd corrected ed.)
Software engineering with Ada
Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Three approaches to type structure
Proc. of the international joint conference on theory and practice of software development (TAPSOFT) Berlin, March 25-29, 1985 on Mathematical foundations of software development, Vol. 1: Colloquium on trees in algebra and programming (CAAP'85)
Abstract types have existential types
POPL '85 Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
A Machine-Oriented Logic Based on the Resolution Principle
Journal of the ACM (JACM)
Using dependent types to express modular structure
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Type definitions with parameters
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
CLU Reference Manual
On the unification of data and program abstraction in Ada
POPL '83 Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Principal type-schemes for functional programs
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the Thirteenth Spring School of the LITP on Combinators and Functional Programming Languages
Towards a theory of type structure
Programming Symposium, Proceedings Colloque sur la Programmation
An ideal model for recursive polymorphic types
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
HOPE: An experimental applicative language
LFP '80 Proceedings of the 1980 ACM conference on LISP and functional programming
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
An overview of data typing systems and data abstraction in programming languages
ACM SIGCSE Bulletin
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Combining language and database advances in an object-oriented development environment
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Empty types in polymorphic lambda calculus
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Bindings persistent programming languages
ACM SIGPLAN Notices
Types and persistence in database programming languages
ACM Computing Surveys (CSUR)
Demeter: a case study of software growth through parameterized classes
ICSE '88 Proceedings of the 10th international conference on Software engineering
Type theories and object-oriented programmimg
ACM Computing Surveys (CSUR)
Using tuple space communication in distributed object-oriented languages
OOPSLA '88 Conference proceedings on Object-oriented programming systems, languages and applications
Bounded quantifiers have interval models
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Type inference in a database programming language
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
ML with extended pattern matching and subtypes
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Objects as closures: abstract semantics of object-oriented languages
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
An open-ended data representation model for EU_LISP
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Database programming in Machiavelli—a polymorphic language with static type inference
SIGMOD '89 Proceedings of the 1989 ACM SIGMOD international conference on Management of data
Application programming as the construction of language interpreters
ACM SIGPLAN Notices
Conception, evolution, and application of functional programming languages
ACM Computing Surveys (CSUR)
Performance Properties of Vertically Partitioned Object-Oriented Systems
IEEE Transactions on Software Engineering
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A proper extension of ML with an effective type-assignment
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
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
Object-oriented design: a responsibility-driven approach
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
OROS: toward a type model for software development environments
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Extending ordinary inheritance schemes to include generalization
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
Static type inference for parametric classes
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Interfaces for strongly-typed object-oriented programming
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Toward reliable reactive systems
IWSSD '89 Proceedings of the 5th international workshop on Software specification and design
How to make ad-hoc polymorphism less ad hoc
POPL '89 Proceedings of the 16th 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
Meta-circular interpreter for a strongly typed language
Journal of Symbolic Computation
Understanding object-oriented: a unifying paradigm
Communications of the ACM
The O2 database programming language
VLDB '89 Proceedings of the 15th international conference on Very large data bases
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
Two-directional record layout for multiple inheritance
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
Type-dependent parameter inference
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
The Object-Oriented Functional Data Language
IEEE Transactions on Software Engineering
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
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
Viewing object as patterns of communicating agents
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Type substitution for object-oriented programming
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Reasoning about object-oriented programs that use subtypes
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Type consistency of queries in an object-oriented database system
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
A record calculus based on symmetric concatenation
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
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
Dynamic typing in a statically typed language
ACM Transactions on Programming Languages and Systems (TOPLAS)
Building Flexible Real-Time Systems Using the Flex Language
Computer - Special issue on real-time systems
A naming system for feature-based service specification in distributed operating systems
SIGSMALL '91 Proceedings of the 1991 ACM SIGSMALL/PC symposium on Small systems
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
A rewrite-based type discipline for a subset of computer algebra
Journal of Symbolic Computation
CLOS: integrating object-oriented and functional programming
Communications of the ACM - Special issue on LISP
LLO: an object-oriented deductive language with methods and method inheritance
SIGMOD '91 Proceedings of the 1991 ACM SIGMOD international conference on Management of data
An ad hoc approach to the implementation of polymorphism
ACM Transactions on Programming Languages and Systems (TOPLAS)
Static type checking of multi-methods
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
A static type system for message passing
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
Object-oriented type inference
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
Object-oriented programming in Ada83—genericity rehabilitated
ACM SIGAda Ada Letters
Software engineering and the game of monopoly
ACM SIGCSE Bulletin
An object-oriented Tower Of Babel
ACM SIGPLAN OOPS Messenger
ACM SIGPLAN OOPS Messenger
ACM SIGPLAN Notices
Automatic instantiation in Ada
TRI-Ada '91 Proceedings of the conference on TRI-Ada '91: today's accomplishments; tomorrow's expectations
TRI-Ada '91 Proceedings of the conference on TRI-Ada '91: today's accomplishments; tomorrow's expectations
Introduction to the literature on object-oriented design, programming, and languages
ACM SIGPLAN OOPS Messenger
Towards a type theory for active objects
OOPSLA/ECOOP '90 Proceedings of the workshop on Object-based concurrent programming
Language Design for Program Manipulation
IEEE Transactions on Software Engineering
Correctly typing objects through subtyping and type inference
SAC '92 Proceedings of the 1992 ACM/SIGAPP symposium on Applied computing: technological challenges of the 1990's
Four Dimensions of programming-language independence
ACM SIGPLAN Notices
Object-oriented programs in realtime
ACM SIGPLAN Notices
Object CHILL—an object oriented language for systems implementation
CSC '92 Proceedings of the 1992 ACM annual conference on Communications
The design and implementation of hierarchical software systems with reusable components
ACM Transactions on Software Engineering and Methodology (TOSEM)
Communications of the ACM
A naming system for feature-based service specification in distributed operating systems
ACM SIGSMALL/PC Notes
A new set interpretation of the inheritance relation and its checking
ACM SIGPLAN OOPS Messenger
Polymorphic type reconstruction for garbage collection without tags
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
A calculus for overloaded functions with subtyping
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
Combination of inheritance hierarchies
OOPSLA '92 conference proceedings on Object-oriented programming systems, languages, and applications
Logic programming with typed unification and its realization on an abstract machine
IBM Journal of Research and Development
A compilation method for ML-style polymorphic record calculi
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Unboxed objects and polymorphic typing
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Bounded quantification is undecidable
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
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
Multiple representation of abstract data types and reuse of realizations
SAC '92 Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing: technological challenges of the 1990's
Using *this-method* to plan and execute tasks in CLOS
ACM SIGPLAN Lisp Pointers
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Software Engineering and Methodology (TOSEM)
Semantics for communication primitives in a polymorphic language
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
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
Object-oriented programming without recursive types
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A constructive logic of multiple subtyping
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Filtering import: a basic mechanism for reusability
SAC '93 Proceedings of the 1993 ACM/SIGAPP symposium on Applied computing: states of the art and practice
A class library management system for object-oriented programming
SAC '93 Proceedings of the 1993 ACM/SIGAPP symposium on Applied computing: states of the art and practice
ACM SIGPLAN Notices
Type inclusion constraints and type inference
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Is object-oriented programming structured programming?
ACM SIGPLAN Notices
Equal rights for functional objects or, the more things change, the more they are the same
ACM SIGPLAN OOPS Messenger
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
Regular types for active objects
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Type inference with polymorphic recursion
ACM Transactions on Programming Languages and Systems (TOPLAS)
On the type structure of standard ML
ACM Transactions on Programming Languages and Systems (TOPLAS)
Second-order signature: a tool for specifying data models, query processing, and optimization
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
ROMAN-9X: a technique for representing object models in Ada 9X notation
TRI-Ada '93 Proceedings of the conference on TRI-Ada '93
The design of the E programming language
ACM Transactions on Programming Languages and Systems (TOPLAS)
The typed polymorphic label-selective λ-calculus
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Computational Linguistics
Manifest types, modules, and separate compilation
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A type-theoretic approach to higher-order modules with sharing
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Decidable bounded quantification
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Automated synthesis of interface adapters for reusable classes
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Using interface inheritance to address problems in system software evolution
IDL '94 Proceedings of the workshop on Interface definition languages
Polymorphic type inference and abstract data types
ACM Transactions on Programming Languages and Systems (TOPLAS)
Typechecking and modules for multi-methods
OOPSLA '94 Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications
Object oriented methods using Fortran 90
ACM SIGPLAN Fortran Forum
The Larch/Smalltalk interface specification language
ACM Transactions on Software Engineering and Methodology (TOSEM)
User interface specification using an enhanced spreadsheet model
ACM Transactions on Graphics (TOG)
TRI-Ada '94 Proceedings of the conference on TRI-Ada '94
Orthogonal persistence and Ada
TRI-Ada '94 Proceedings of the conference on TRI-Ada '94
Structural decidable extensions of bounded quantification
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Object oriented method for Axiom
ACM SIGPLAN Notices
ACM Transactions on Database Systems (TODS)
Polymorphic queries across sets, bags, and lists
ACM SIGPLAN Notices
The object oriented model and its advantages
ACM SIGPLAN OOPS Messenger
Numerical analysis using nonprocedural paradigms
ACM Transactions on Mathematical Software (TOMS)
Type analysis of logic programs in the presence of type definitions
PEPM '95 Proceedings of the 1995 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Tailoring OO analysis and design methods (panel)
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
An algebraic semantics of subobjects
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
Typechecking and modules for multimethods
ACM Transactions on Programming Languages and Systems (TOPLAS)
A polymorphic record calculus and its compilation
ACM Transactions on Programming Languages and Systems (TOPLAS)
FPCA '95 Proceedings of the seventh international conference on Functional programming languages and computer architecture
Polymorphism and type inference in database programming
ACM Transactions on Database Systems (TODS)
Simple objects for Standard ML
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
Complexity of kernel Fun subtype checking
Proceedings of the first ACM SIGPLAN international conference on Functional programming
ACM Computing Surveys (CSUR)
Split objects: a disciplined use of delegation within objects
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Environmental acquisition: a new inheritance-like abstraction mechanism
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Using parameterized signatures to express modular structure
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Program generalization for software reuse: from C to C++
SIGSOFT '96 Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
Strategic directions in research on programming languages
ACM Computing Surveys (CSUR) - Special ACM 50th-anniversary issue: strategic directions in computing research
An Adaptive Object-Oriented Approach to Integration and Access ofHeterogeneous Information Sources
Distributed and Parallel Databases
Proceedings of the 1997 symposium on Software reusability
Foundations for the implementation of higher-order subtyping
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
EVA: A Flexible Programming Method for Evolving Systems
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Consummating virtuality to support more polymorphism in C++
ACM SIGPLAN Notices
Pizza into Java: translating theory into practice
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Improvement of message communication in concurrent logic language
PASCO '97 Proceedings of the second international symposium on Parallel symbolic computation
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Pragmatic subtyping in polymorphic languages
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
An efficient method for checking object-oriented database schema correctness
ACM Transactions on Database Systems (TODS)
SIGMOD '99 Proceedings of the 1999 ACM SIGMOD international conference on Management of data
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
Integrating functional and imperative programming
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Space and time-efficient memory layout for multiple inheritance
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
An algebraic model of sybtypes in object-oriented languages (draft)
OOPWORK '86 Proceedings of the 1986 SIGPLAN workshop on Object-oriented programming
Classification in object-oriented systems
OOPWORK '86 Proceedings of the 1986 SIGPLAN workshop on Object-oriented programming
Abstract data type support in Prolog and its relation to parallelism
SAC '94 Proceedings of the 1994 ACM symposium on Applied computing
A formalization of a query language for complex objects
CSC '91 Proceedings of the 19th annual conference on Computer Science
Operational methods in theoretical computer science
ACM Computing Surveys (CSUR)
Semantics study and reality of computing
ACM Computing Surveys (CSUR)
Type Safety in the Context of Method Updates
Journal of Intelligent Information Systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Typed compilation of inclusive subtyping
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
Combining subsumption and binary methods: an object calculus with views
POPL '01 Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Flexible types for a concurrent model
Concurrent object-oriented programming and petri nets
Comparing frameworks and layered refinement
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Orthogonal type extensions and reductions
ACM SIGPLAN Notices
Towards safe and efficient customization in distributed systems
EW 6 Proceedings of the 6th workshop on ACM SIGOPS European workshop: Matching operating systems to application needs
ACM Transactions on Software Engineering and Methodology (TOSEM)
Extensible algebraic datatypes with defaults
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming
Using mixins to build flexible widgets
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Information and Computation - FOOL V
Information and Computation - FOOL V
Objects and classes in Algol-like languages
Information and Computation - FOOL V
Support for subtyping and code re-use in Timor
CRPIT '02 Proceedings of the Fortieth International Conference on Tools Pacific: Objects for internet, mobile and embedded applications
Unifying object-oriented programming with typed functional programming
ASIA-PEPM '02 Proceedings of the ASIAN symposium on Partial evaluation and semantics-based program manipulation
Polymorphic lambda calculus and subtyping
Theoretical Computer Science
Open and closed scopes for constrained genericity
Theoretical Computer Science
Coercion as homomorphism: type inference in a system with subtyping and overloading
Proceedings of the 4th ACM SIGPLAN international conference on Principles and practice of declarative programming
Java bytecode as a typed term calculus
Proceedings of the 4th ACM SIGPLAN international conference on Principles and practice of declarative programming
An interoperable calculus for external object access
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Pinnacles of software engineering: 25 years of formal methods
Annals of Software Engineering
Coercive subtyping for the calculus of constructions
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Products and polymorphic subtypes
Fundamenta Informaticae
Optimal Representations of Polymorphic Types with Subtyping
Higher-Order and Symbolic Computation
Induction, Domains, Calculi: Strachey's Contributions to Programming-Language Engineering
Higher-Order and Symbolic Computation
On Dart-Zobel Algorithm for testing regular type inclusion
ACM SIGPLAN Notices
Orthogonally persistent object systems
The VLDB Journal — The International Journal on Very Large Data Bases - Persistent object systems
Fibonacci: a programming language for object databases
The VLDB Journal — The International Journal on Very Large Data Bases - Persistent object systems
Thémis: a database programming language handling integrity constraints
The VLDB Journal — The International Journal on Very Large Data Bases - Persistent object systems
Object-Oriented Query Languages: The Notion and the Issues
IEEE Transactions on Knowledge and Data Engineering
Query Optimization and Execution Plan Generation in Object-Oriented Data Management Systems
IEEE Transactions on Knowledge and Data Engineering
A General Theory for Evolving Application Models
IEEE Transactions on Knowledge and Data Engineering
The Role of Polymorphic Reuse Mechanisms in Schema Evolution in an Object-Oriented Database
IEEE Transactions on Knowledge and Data Engineering
Navigational Accesses in a Temporal Object Model
IEEE Transactions on Knowledge and Data Engineering
A Database Perspective on Geospatial Data Modeling
IEEE Transactions on Knowledge and Data Engineering
A brief history of the object-oriented approach
ACM SIGSOFT Software Engineering Notes
The persistent workshop - a programming environment for Napier88
Nordic Journal of Computing
PolyTOIL: A type-safe polymorphic object-oriented language
ACM Transactions on Programming Languages and Systems (TOPLAS)
Aspects and polymorphism in AspectJ
Proceedings of the 2nd international conference on Aspect-oriented software development
Type Management: A Key to Software Reuse in Open Distributed Systems
EDOC '97 Proceedings of the 1st International Conference on Enterprise Distributed Object Computing
ESOP '99 Proceedings of the 8th European Symposium on Programming Languages and Systems
Recursive Types and Pattern-Matching in Java
GCSE '99 Proceedings of the First International Symposium on Generative and Component-Based Software Engineering
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
Database Support for Knowledge-Based Image Evaluation
VLDB '87 Proceedings of the 13th International Conference on Very Large Data Bases
Pure Type Systems with Subtyping
TLCA '99 Proceedings of the 4th International Conference on Typed Lambda Calculi and Applications
A Domain-theoretic Approach to Integrating Functional and Logic Database Languages
VLDB '93 Proceedings of the 19th International Conference on Very Large Data Bases
Supporting Exceptions to Schema Consistency to Ease Schema Evolution in OODBMS
VLDB '94 Proceedings of the 20th International Conference on Very Large Data Bases
Processing Object-Oriented Queries with Invertible Late Bound Functions
VLDB '95 Proceedings of the 21th International Conference on Very Large Data Bases
Flexible Relations - Operational Support of Variant Relational Structures
VLDB '95 Proceedings of the 21th International Conference on Very Large Data Bases
Conformance, Genericity, Inheritance and Enhancement
ECOOP '87 Proceedings of the European Conference on Object-Oriented Programming
Inheritance and Subtyping in a Parallel Object-Oriented Language
ECOOP '87 Proceedings of the European Conference on Object-Oriented Programming
Inheritance as an Incremental Modification Mechanism or What Like Is and Isn't Like
ECOOP '88 Proceedings of the European Conference on Object-Oriented Programming
Teaching Object-Oriented Programming Is More than Teaching Object-Oriented Programming Languages
ECOOP '88 Proceedings of the European Conference on Object-Oriented Programming
GSBL: An Algebraic Specification Language Based on Inheritance
ECOOP '88 Proceedings of the European Conference on Object-Oriented Programming
Integrating Independently-Developed Components in Object-Oriented Languages
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
Attaching Second-Order Types to Methods in an Object-Oriented Language
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
Typed Sets as a Basis for Object-Oriented Database Schemas
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
Objects with Multiple Most Specific Classes
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
Sealing, Encapsulation, and Mutability
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Type-Safe Prototype-Based Component Evolution
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
Isomorphisms - A Link Between the Shallow and the Deep
TPHOLs '99 Proceedings of the 12th International Conference on Theorem Proving in Higher Order Logics
Abstracting Services in a Heterogeneous Environment
Middleware '01 Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms Heidelberg
Ada Europe '01 Proceedings of the 6th Ade-Europe International Conference Leuven on Reliable Software Technologies
Polymorphism and Genetic Programming
EuroGP '01 Proceedings of the 4th European Conference on Genetic Programming
Constructor Subtyping in the Calculus of Inductive Constructions
FOSSACS '00 Proceedings of the Third International Conference on Foundations of Software Science and Computation Structures: Held as Part of the Joint European Conferences on Theory and Practice of Software,ETAPS 2000
Type Isomorphisms and Proof Reuse in Dependent Type Theory
FoSSaCS '01 Proceedings of the 4th International Conference on Foundations of Software Science and Computation Structures
FoSSaCS '02 Proceedings of the 5th International Conference on Foundations of Software Science and Computation Structures
System-Level Types for Component-Based Design
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
Requirement Oriented Programming
Selected Papers from the International Seminar on Generic Programming
Using, Understanding, and Unraveling the OCaml Language. From Practice to Theory and Vice Versa
Applied Semantics, International Summer School, APPSEM 2000, Caminha, Portugal, September 9-15, 2000, Advanced Lectures
Anti-Symmetry of Higher-Order Subtyping
CSL '99 Proceedings of the 13th International Workshop and 8th Annual Conference of the EACSL on Computer Science Logic
An Interpretation of Extensible Objects
FCT '99 Proceedings of the 12th International Symposium on Fundamentals of Computation Theory
A New Type Checking Approach for OCL Version 2.0?
Object Modeling with the OCL, The Rationale behind the Object Constraint Language
An Extensible Type System for Component-Based Design
TACAS '00 Proceedings of the 6th International Conference on Tools and Algorithms for Construction and Analysis of Systems: Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS 2000
Type-safe relaxing of schema consistency rules for flexible modelling in OODBMS
The VLDB Journal — The International Journal on Very Large Data Bases
Programming methodology
An abstract intermediate representation in compilation systems
ACM SIGPLAN Notices
An Evolutionary View of the Object-Oriented Paradigm
Journal of Computing Sciences in Colleges
Typed operational semantics for higher-order subtyping
Information and Computation
Information and Computation - TACS 2001
Intersection types and bounded polymorphism
Mathematical Structures in Computer Science
Proceedings of the 2004 ACM symposium on Applied computing
Lexical semantic techniques for corpus analysis
Computational Linguistics - Special issue on using large corpora: II
Go!—A Multi-Paradigm Programming Language for Implementing Multi-Threaded Agents
Annals of Mathematics and Artificial Intelligence
Higher-order subtyping and its decidability
Information and Computation
Box-structured methods for systems development with objects
IBM Systems Journal
Modular typechecking for hierarchically extensible datatypes and functions
ACM Transactions on Programming Languages and Systems (TOPLAS)
Converting Java classes to use generics
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Converting java programs to use generic libraries
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Inheritance processing and conflicts in structural generalization hierarchies
ACM Computing Surveys (CSUR)
Decidable subclassing-bounded quantification
TLDI '05 Proceedings of the 2005 ACM SIGPLAN international workshop on Types in languages design and implementation
A simple typed intermediate language for object-oriented languages
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Polymorphic predicate abstraction
ACM Transactions on Programming Languages and Systems (TOPLAS)
Essential language support for generic programming
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Understanding access restriction of variant parametric types and Java wildcards
Proceedings of the 2005 ACM symposium on Applied computing
Supporting software composition at the programming language level
Science of Computer Programming - Special issue on new software composition concepts
Encyclopedia of Computer Science
Subtyping, recursion, and parametric polymorphism in kernel fun
Information and Computation
The impact of software engineering research on modern progamming languages
ACM Transactions on Software Engineering and Methodology (TOSEM)
A reflective functional language for hardware design and theorem proving
Journal of Functional Programming
Anti-symmetry of higher-order subtyping and equality by subtyping
Mathematical Structures in Computer Science
Software—Practice & Experience - Research Articles
Quantified types in an imperative language
ACM Transactions on Programming Languages and Systems (TOPLAS)
Variant parametric types: A flexible subtyping scheme for generics
ACM Transactions on Programming Languages and Systems (TOPLAS)
Abstraction preservation and subtyping in distributed languages
Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming
Context-parametric polykinded types
Proceedings of the 2006 ACM SIGPLAN workshop on Generic programming
A flow-based approach for variant parametric types
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Extensional equivalence and singleton types
ACM Transactions on Computational Logic (TOCL)
A multi-level architecture for distributed object bases
Data & Knowledge Engineering
Fundamenta Informaticae - Typed Lambda Calculi and Applications (TLCA'99)
Types for Active Objects with Static Deadlock Prevention
Fundamenta Informaticae
Science of Computer Programming - Special issue: Synchronization and concurrency in object-oriented languages
The development of the Emerald programming language
Proceedings of the third ACM SIGPLAN conference on History of programming languages
VPC prediction: reducing the cost of indirect branches via hardware-based dynamic devirtualization
Proceedings of the 34th annual international symposium on Computer architecture
Service oriented architectures: approaches, technologies and research issues
The VLDB Journal — The International Journal on Very Large Data Bases
Context Dependent Procedures and Computed Types in √eriFun
Electronic Notes in Theoretical Computer Science (ENTCS)
Type-level Computation Using Narrowing in Ωmega
Electronic Notes in Theoretical Computer Science (ENTCS)
Lingua Franca: an IDL for structural subtyping distributed object systems
COOTS'95 Proceedings of the USENIX Conference on Object-Oriented Technologies on USENIX Conference on Object-Oriented Technologies (COOTS)
Featherweight Java with multi-methods
Proceedings of the 5th international symposium on Principles and practice of programming in Java
Improving the performance of object-oriented languages with dynamic predication of indirect jumps
Proceedings of the 13th international conference on Architectural support for programming languages and operating systems
StrongAspectJ: flexible and safe pointcut/advice bindings
Proceedings of the 7th international conference on Aspect-oriented software development
Coercions in a polymorphic type system
Mathematical Structures in Computer Science
A comparison of c++ concepts and haskell type classes
Proceedings of the ACM SIGPLAN workshop on Generic programming
It Is Time to Mechanize Programming Language Metatheory
Verified Software: Theories, Tools, Experiments
A Model for Java with Wildcards
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Central European Functional Programming School
Syntactic Metatheory of Higher-Order Subtyping
CSL '08 Proceedings of the 22nd international workshop on Computer Science Logic
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Programming languages as part of core computer science
ACM SIGPLAN Notices
A family of syntactic logical relations for the semantics of Haskell-like languages
Information and Computation
Featherweight Java with dynamic and static overloading
Science of Computer Programming
Jigsaw-Puzzle-Like 3D Glyphs for Visualization of Grammatical Constraints
IEICE - Transactions on Information and Systems
A discussion on security typing and measurement for SOA
ACM SIGSOFT Software Engineering Notes
Existential Quantification for Variant Ownership
ESOP '09 Proceedings of the 18th European Symposium on Programming Languages and Systems: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Range parameterized types: use-site variance without the existential questions
Proceedings of the 11th International Workshop on Formal Techniques for Java-like Programs
Type-specialized staged programming with process separation
Proceedings of the 2009 ACM SIGPLAN workshop on Generic programming
Parametric datatype-genericity
Proceedings of the 2009 ACM SIGPLAN workshop on Generic programming
Discourse consistency and many-sorted logic
IJCAI'87 Proceedings of the 10th international joint conference on Artificial intelligence - Volume 2
On understanding data abstraction, revisited
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
Automation technique of software internationalization and localization based on lexical analysis
Proceedings of the 2nd International Conference on Interaction Sciences: Information Technology, Culture and Human
A survey of techniques for achieving metadata interoperability
ACM Computing Surveys (CSUR)
Understanding the use of inheritance with visual patterns
ESEM '09 Proceedings of the 2009 3rd International Symposium on Empirical Software Engineering and Measurement
On the Decidability of Subtyping with Bounded Existential Types
APLAS '09 Proceedings of the 7th Asian Symposium on Programming Languages and Systems
Interfaces and binding in component based development of formal models
Proceedings of the Fourth International ICST Conference on Performance Evaluation Methodologies and Tools
A Graph-based Semantics For Object-oriented Programming Constructs
Electronic Notes in Theoretical Computer Science (ENTCS)
Subtyping recursion and parametric polymorphism in kernel fun
Information and Computation
A calculus for uniform feature composition
ACM Transactions on Programming Languages and Systems (TOPLAS)
Typechecking UML static models
UML'99 Proceedings of the 2nd international conference on The unified modeling language: beyond the standard
Bounded session types for object oriented languages
FMCO'06 Proceedings of the 5th international conference on Formal methods for components and objects
SSDGP'06 Proceedings of the 2006 international conference on Datatype-generic programming
SSDGP'06 Proceedings of the 2006 international conference on Datatype-generic programming
Case-based reasoning for eliciting the evolution of geospatial objects
COSIT'09 Proceedings of the 9th international conference on Spatial information theory
On mathematical laws of software
Transactions on computational science II
DynXML: safely programming the dynamic web
APLWACA '10 Proceedings of the 2010 Workshop on Analysis and Programming Languages for Web Applications and Cloud Applications
The design of SafeJML, a specification language for SCJ with support for WCET specification
Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems
Coloured Petri net refinement specification and correctness proof with Coq
Innovations in Systems and Software Engineering
The use of overloading in JAVA programs
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
Generic programming with c++ concepts and haskell type classes: A comparison
Journal of Functional Programming
Towards a semantic model for Java wildcards
Proceedings of the 12th Workshop on Formal Techniques for Java-Like Programs
The architecture description language model
Graph transformations and model-driven engineering
Full abstraction in a subtyped pi-calculus with linear types
CONCUR'11 Proceedings of the 22nd international conference on Concurrency theory
The Combinatorial BLAS: design, implementation, and applications
International Journal of High Performance Computing Applications
A statically typed query language for property graphs
Proceedings of the 15th Symposium on International Database Engineering & Applications
MASPEGHI 2004 mechanisms for specialization, generalization and inheritance
ECOOP'04 Proceedings of the 2004 international conference on Object-Oriented Technology
Mnemonics: type-safe bytecode generation at run time
Higher-Order and Symbolic Computation
Comparing service-oriented and distributed object architectures
OTM'05 Proceedings of the 2005 Confederated international conference on On the Move to Meaningful Internet Systems - Volume >Part I
Exact type parameterization and ThisType support
TLDI '12 Proceedings of the 8th ACM SIGPLAN workshop on Types in language design and implementation
Digital object prototypes: an effective realization of digital object types
ECDL'06 Proceedings of the 10th European conference on Research and Advanced Technology for Digital Libraries
Instant polymorphic type systems for mobile process calculi: just add reduction rules and close
ESOP'05 Proceedings of the 14th European conference on Programming Languages and Systems
An extended type system for OCL supporting templates and transformations
FMOODS'05 Proceedings of the 7th IFIP WG 6.1 international conference on Formal Methods for Open Object-Based Distributed Systems
General homomorphic overloading
IFL'04 Proceedings of the 16th international conference on Implementation and Application of Functional Languages
Behavioral types for embedded software: a survey
Component-Based Software Development for Embedded Systems
Shakeins: nonintrusive aspects for middleware frameworks
Transactions on Aspect-Oriented Software Development II
Map algebra extended with functors for temporal data
ER'05 Proceedings of the 24th international conference on Perspectives in Conceptual Modeling
Semantics of model views for information exchanges using the industry foundation class schema
Advanced Engineering Informatics
Building the access pointers to a computation environment
ADBIS'97 Proceedings of the First East-European conference on Advances in Databases and Information systems
Simulating multiple inheritance and generics in Java
Computer Languages
Side-effect free functions in object-oriented languages
Computer Languages
Action semantics-directed prototyping
Computer Languages
Bidirectional data flow analysis for type inferencing
Computer Languages, Systems and Structures
Logic and Program Semantics
SSGIP'10 Proceedings of the 2010 international spring school conference on Generic and Indexed Programming
Products and Polymorphic Subtypes
Fundamenta Informaticae - Concurrency Specification and Programming Workshop (CS&P'2001)
Fundamenta Informaticae - Typed Lambda Calculi and Applications (TLCA'99)
Types for Active Objects with Static Deadlock Prevention
Fundamenta Informaticae
A Subtyping for Extensible, Incomplete Objects
Fundamenta Informaticae
On the Semantics of a Semantic Network
Fundamenta Informaticae
Type-specialized staged programming with process separation
Higher-Order and Symbolic Computation
The Formal Design Models of a Universal Array UA and its Implementation
International Journal of Software Science and Computational Intelligence
The crosscutting impact of the AOSD Brazilian research community
Journal of Systems and Software
Inference rules for generic code migration of aspect-oriented programs
Science of Computer Programming
Functional reactive programming with liveness guarantees
Proceedings of the 18th ACM SIGPLAN international conference on Functional programming
From types to type requirements: genericity for model-driven engineering
Software and Systems Modeling (SoSyM)
Do developers benefit from generic types?: an empirical comparison of generic and raw types in java
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Scalaness/nesT: type specialized staged programming for sensor networks
Proceedings of the 12th international conference on Generative programming: concepts & experiences
Hi-index | 0.03 |
Our objective is to understand the notion of type in programming languages, present a model of typed, polymorphic programming languages that reflects recent research in type theory, and examine the relevance of recent research to the design of practical programming languages.Object-oriented languages provide both a framework and a motivation for exploring the interaction among the concepts of type, data abstraction, and polymorphism, since they extend the notion of type to data abstraction and since type inheritance is an important form of polymorphism. We develop a &lgr;-calculus-based model for type systems that allows us to explore these interactions in a simple setting, unencumbered by complexities of production programming languages.The evolution of languages from untyped universes to monomorphic and then polymorphic type systems is reviewed. Mechanisms for polymorphism such as overloading, coercion, subtyping, and parameterization are examined. A unifying framework for polymorphic type systems is developed in terms of the typed &lgr;-calculus augmented to include binding of types by quantification as well as binding of values by abstraction.The typed &lgr;-calculus is augmented by universal quantification to model generic functions with type parameters, existential quantification and packaging (information hiding) to model abstract data types, and bounded quantification to model subtypes and type inheritance. In this way we obtain a simple and precise characterization of a powerful type system that includes abstract data types, parametric polymorphism, and multiple inheritance in a single consistent framework. The mechanisms for type checking for the augmented &lgr;-calculus are discussed.The augmented typed &lgr;-calculus is used as a programming language for a variety of illustrative examples. We christen this language Fun because fun instead of &lgr; is the functional abstraction keyword and because it is pleasant to deal with.Fun is mathematically simple and can serve as a basis for the design and implementation of real programming languages with type facilities that are more powerful and expressive than those of existing programming languages. In particular, it provides a basis for the design of strongly typed object-oriented languages.