This master's thesis describes a multiple dispatch extension to Java
that makes Java more Lisp/CLOS-like. The extension:
...supports open classes and symmetric
multiple dispatch. An open class is one to which new methods can be added without editing the class
directly. Multiple dispatch allows the method invoked by a message send to depend on the run-time
types of any subset of the argument objects. MultiJava is the first full-scale programming language to
support these features while retaining modular static typechecking and compilation.
Method polymorphism in Java and the distinction between
single and multiple dispatch is explained with examples in
Multi-Dispatch in the Java Virtual Machine:
Design and Implementation,
Dutchyn, Lu, Szafron, Bromling and Holst
.
(MultiJava: Design, implementation, and evaluation
of a Java-compatible language supporting
modular open classes and symmetric multiple dispatch,
Curtis Charles Clifton, 2001)
[MultiJava Project Homepage]
Posted to OOP by jon fernquest on 9/21/02; 4:10:54 AM
|
|