Christopher Dutchyn
M.Sc. Graduate
Email:   cdutchyn@cs.ubc.ca
dutchyn@cs.ualberta.ca
WWW: http://www.cs.ubc.ca/~cdutchyn
http://www.cs.ualberta.ca/~dutchyn
Research Lab: Software Practices Lab
Object-Oriented Design
Supervisor: Duane Szafron
My M.Sc. dissertation describes implementing multi-dispatch in the Java Virtual Machine. Current mainstream OO languages do not provide simple solutions to expressing operations that depend on the dynamic types of multiple arguments. These occurences are prevalent enough to have a number of different design patterns dedicated to "best practice" work arounds. We show that implementing true multiple dispatch within the Java Virtual Machine provides performance equal to or better than these hand-coded work-arounds (visitor pattern, typecase, ...). Our implementation requires no additional syntax or specialized compiler support, as demonstrates by reimplementing the Swing toolkit with fewer, less complex dispatches. In addition, as posited by Vijay Saraswat, pure multiple dispatch in the JVM eliminates the need for classloader constraints to guarantee static typing properties at dispatch. Because our implementation allows programmers to selectively enable multiple dispatch, we were unable to entirely remove the classload constraints system. Other materials available include our OOPSLA 2000 poster and our COOTS 2001 techincal paper. Source code can be made available to research groups accepting Sun's Research Community Source License.
I am now at UBC; you can find current information here.
[University of Alberta]
University of Alberta
[Department of Computing Science]
Computing Science

Copyright © Department of Computing Science.
All rights reserved.
Last update: