On Binary Methods

∗partially supported by NSF grant CCR-9121778 and NSF grant CCR-9424123. Internet:kim@cs.williams.edu †Internet: luca@src.dec.com. ‡Internet: castagna@dmi.ens.fr §Jonathan Eifrig, Scott Smith, Valery Trifonov. Contact Scott Smith. Research partially supported by NSF grant CCR-9301340 and AFOSR grant F49620-93-1-0169. Internet: scott@cs.jhu.edu. ¶partially supported by NSF grants CCR-9108654 and CCR9593168. Internet: leavens@cs.iastate.edu. ‖Internet: benjamin.pierce@cl.cam.ac.uk c © John Wiley & Sons, Inc.

[1]  Giuseppe Castagna,et al.  A Calculus for Overloaded Functions with Subtyping , 1995, Inf. Comput..

[2]  Benjamin C. Pierce,et al.  Statically typed friendly functions via partially abstract types , 1993 .

[3]  José Meseguer,et al.  Inclusions and Subtypes I: First-Order Case , 1996, J. Log. Comput..

[4]  Luca Cardelli,et al.  Subtyping recursive types , 1991, POPL '91.

[5]  John G. Hosking,et al.  Multi-Methods in a Statically-Typed Programming Language , 1991, ECOOP.

[6]  Jeannette M. Wing,et al.  A behavioral notion of subtyping , 1994, TOPL.

[7]  BlackAndrew,et al.  Object structure in the Emerald system , 1986 .

[8]  Benjamin C. Pierce,et al.  Simple type-theoretic foundations for object-oriented programming , 1994, Journal of Functional Programming.

[9]  Giuseppe Castagna,et al.  Covariance and contravariance: conflict without a cause , 1995, TOPL.

[10]  Martín Abadi,et al.  On Subtyping and Matching , 1995, ECOOP.

[11]  Greg Nelson,et al.  Systems programming in modula-3 , 1991 .

[12]  John C. Mitchell,et al.  A type system for prototyping languages , 1994, POPL '94.

[13]  John C. Mitchell,et al.  Abstract types have existential types , 1985, POPL.

[14]  Andrew P. Black,et al.  Typechecking Polymorphism in Emerald , 1996 .

[15]  Bertrand Meyer,et al.  Eiffel: The Language , 1991 .

[16]  T LeavensGary,et al.  Specification and verification of object-oriented programs using supertype abstraction , 1995 .

[17]  Roberto Ierusalimschy,et al.  Types in school , 1993, SIGP.

[18]  Jens Palsberg,et al.  Foundations of object-oriented languages , 1994, SIGP.

[19]  Giorgio Ghelli A static type system for message passing , 1991, OOPSLA 1991.

[20]  Wolfgang Klas,et al.  Efficient Dynamic Look-Up Strategy for Multi-Methods , 1994, ECOOP.

[21]  Gary T. Leavens,et al.  Typechecking and modules for multi-methods , 1994, OOPSLA 1994.

[22]  Craig Schaffert,et al.  An introduction to Trellis/Owl , 1986, OOPSLA 1986.

[23]  Bjarne Stroustrup,et al.  The C++ Programming Language, First Edition , 1986 .

[24]  Luca Cardelli,et al.  On understanding types, data abstraction, and polymorphism , 1985, CSUR.

[25]  Scott F. Smith,et al.  Type inference for recursively constrained types and its application to OOP , 1995, MFPS.

[26]  Daniel H. H. Ingalls A simple technique for handling multiple polymorphism , 1986, OOPSLA 1986.

[27]  Craig Chambers,et al.  Object-Oriented Multi-Methods in Cecil , 1992, ECOOP.

[28]  Gary T. Leavens,et al.  Foundations of Object-Oriented Languages: 2nd Workshop report , 1995, SIGP.

[29]  Kim B. Bruce A paradigmatic object-oriented programming language: Design, static typing and semantics , 1994, Journal of Functional Programming.

[30]  Scott F. Smith,et al.  Sound polymorphic type inference for objects , 1995, OOPSLA.

[31]  Benjamin C. Pierce,et al.  Object-oriented programming without recursive types , 1993, POPL '93.

[32]  GhelliGiorgio A static type system for message passing , 1991 .

[33]  William R. Cook,et al.  Inheritance is not subtyping , 1989, POPL '90.

[34]  John C. Reynolds,et al.  Three Approaches to Type Structure , 1985, TAPSOFT, Vol.1.

[35]  Pierre America,et al.  Designing an Object-Oriented Programming Language with Behavioural Subtyping , 1990, REX Workshop.

[36]  Olivier Gruber,et al.  Optimizing Multi-Method Dispatch Using Compressed Dispatch Tables , 1994, OOPSLA.

[37]  Andrew P. Black,et al.  Object structure in the Emerald system , 1986, OOPSLA 1986.

[38]  John Tang Boyland,et al.  Type-Safe Compilation of Covariant Specialization: A Practical Case , 1996, ECOOP.

[39]  Giuseppe Castagna,et al.  A calculus for overloaded functions with subtyping , 1992, LFP '92.

[40]  John C. Mitchell,et al.  F-bounded quantification for object-oriented programming , 1989 .

[41]  Gregor Kiczales,et al.  Efficient method dispatch in PCL , 1990, LISP and Functional Programming.

[42]  Gary T. Leavens Modular specification and verification of object-oriented programs , 1991, IEEE Software.

[43]  John C. Mitchell Toward a typed foundation for method specialization and inheritance , 1989, POPL '90.

[44]  David Robson,et al.  Smalltalk-80: The Language and Its Implementation , 1983 .

[45]  Bruce G. Lindsay,et al.  Static type checking of multi-methods , 1991, OOPSLA '91.

[46]  Giuseppe Castagna A proposal for making 02 more type-safe , 1995, BDA.

[47]  Stephen J. Garland,et al.  Larch: Languages and Tools for Formal Specification , 1993, Texts and Monographs in Computer Science.

[48]  William R. Cook,et al.  Canning: inheritance is not subtyping , 1990 .

[49]  Martin Hofmann,et al.  A unifying type-theoretic framework for objects , 1994, Journal of Functional Programming.

[50]  Andreas Paepcke Object-oriented programming: the CLOS perspective , 1993 .

[51]  Pierre America,et al.  Inheritance and Subtyping in a Parallel Object-Oriented Language , 1987, ECOOP.

[52]  William R. Cook,et al.  Object-Oriented Programming Versus Abstract Data Types , 1990, REX Workshop.

[53]  Gary T. Leavens,et al.  Reasoning about object-oriented programs that use subtypes , 1990, OOPSLA/ECOOP '90.

[54]  Linda G. DeMichiel,et al.  The Common Lisp Object System: An Overview , 1987, ECOOP.

[55]  Scott F. Smith,et al.  Application of OOP Type Theory: State, Decidability, Integragtion , 1994, OOPSLA.

[56]  Luca Cardelli,et al.  A Semantics of Multiple Inheritance , 1984, Information and Computation.