• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

Modular Statically Typed Multimethods (2002)

Cached

  • Download as a PDF

Download Links

  • [www.cs.ucla.edu]
  • [ftp.cs.williams.edu]
  • [ftp.cs.washington.edu]
  • [ftp.cs.washington.edu]
  • [www.cs.ucla.edu]

  • Save to List
  • Add to Collection
  • Correct Errors
  • Monitor Changes
by Todd Millstein , Craig Chambers
Citations:55 - 8 self
  • Summary
  • Active Bibliography
  • Co-citation
  • Clustered Documents
  • Version History

BibTeX

@MISC{Millstein02modularstatically,
    author = {Todd Millstein and Craig Chambers},
    title = { Modular Statically Typed Multimethods},
    year = {2002}
}

Years of Citing Articles

Bookmark

citeulike Connotea Bibsonomy Del.icio.us Digg Reddit

OpenURL

 

Abstract

Multimethods offer several well-known advantages over the single dispatching of conventional object-oriented languages, including a simple solution to the binary method problem, a natural implementation of the strategy design pattern, and a form of open objects that enables easy addition of new operations to existing classes. However, previous work on statically typed multimethods whose arguments are treated symmetrically has required the whole program to be available in order to perform typechecking. We describe Dubious, a simple core language including first-class generic functions with symmetric multimethods, a classless object model, and modules that can be separately typechecked. We identify two sets of restrictions that ensure modular type safety for Dubious as well as an interesting intermediate point between these two. We have proved each of these modular type systems sound.

Citations

1541 The Java Language Specification - Gosling, Joy, et al. - 1996
1363 Aspect-oriented programming - Kiczales, Lamping, et al.
830 A Theory of Objects - Abadi, Cardelli - 1996
520 Self: the power of simplicity - Ungar, Smith - 1987
388 W.: Mixin-based inheritance - Bracha, Cook - 1990
322 Using Prototypical Objects to Implement Shared Behavior in Object Oriented Systems - Lieberman
297 Pizza into java: Translating theory into practice - Odersky, Wadler - 1997
155 Object-oriented multi-methods in Cecil - Chambers - 1992
144 Implementing Layered Designs with Mixin Layers - Smaragdakis, Batory - 1998
131 A calculus for overloaded functions with subtyping - Castagna, Ghelli, et al. - 1995
127 Covariance and contravariance: conflict without a cause - Castagna - 1995
122 F-bounded polymorphism for object-oriented programming - Canning, Cook, et al. - 1989
122 M.: Modular object-oriented programming with units and mixins - Findler, Flatt - 1998
97 Typechecking and modules for multi-methods - Chambers, Leavens - 1994
84 Object-Oriented Programming Versus Abstract Data Types - Cook - 1991
74 Predicate dispatching: A unified theory of dispatch - Ernst, Kaplan, et al. - 1998
70 Static type checking of multi-methods - Agrawal, DeMichiel, et al. - 1991
63 Using C++ templates to implement role-based designs - VanHilst, Notkin - 1996
60 The Java™ Programming Language, Second Edition - Arnold, Gosling - 1998
58 Parasitic methods: An implementation of multi-methods for java - Boyland, Castagna - 1997
50 Object-Oriented Programming: A Unified Foundation - CASTAGNA - 1997
50 Using Category Theory to Design Implicit Conversions and Generic Operators, Semantics-Directed Compiler Generation - Reynolds - 1980
49 Type checking higher-order polymorphic multi-methods - Bourdoncle, Merz - 1997
49 The Cecil Language Specification and Rationale: Version 2.0 - Chambers - 1995
49 Multi-methods in a statically-typed programming language - Mugridge, Hamer, et al. - 1991
49 OORASS: Seamless support for the creation and maintenance of object-oriented systems - Reenskaug, Andersen, et al. - 1992
47 Common Lisp – the Language, second edition - Steele - 1990
42 Subtyping Is Not a Good “Match” for ObjectOriented Languages - Bruce, Petersen, et al. - 1997
41 The Dylan Reference Manual: The Definitive Guide to the New Object-Oriented Dynamic Language - Shalit, Moon, et al. - 1996
40 J.R.: An exemplar based smalltalk - LaLonde, Thomas, et al. - 1986
32 Object-Oriented Programming: The CLOS Perspective - Paepcke - 1993
26 On the interaction of object-oriented design patterns and programming languages - Baumgartner, Läufer, et al. - 1996
24 A semantics of multiple inheritance. Information and Computation, 76(2/3):138– 164, February/March - Cardelli - 1988
23 Multiple Dispatch as Dispatch on Tuples - Leavens, Millstein - 1998
20 An imperative object calculus. Theory and Practice of Object Systems - Abadi, Cardelli - 1996
16 The Dylan Programming Book - Feinberg, Keene, et al. - 1997
8 Towards Diesel, a Next-Generation OO Language after Cecil - Chambers - 1998
4 BeCecil, A core object-oriented language with block structure and multimethods: Semantics and typing - CHAMBERS, T - 1997
3 Giuseppe Castagna, The Hopkins Object - Bruce, Cardelli - 1995
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University