Christopher Dutchyn [Speaker] Associate Professor
Department of Computer Science
University of Saskatchewan
176 Thorvaldson Building
110 Science Place
Saskatoon, SK, Canada S7N 5C9

+1.306.966.4896 [voice]
+1.306.966.4884 [FAX]

Office: 281.10 Thorvaldson Building

In pursuit of my PhD, most of my research has been in programming language design and implementation, but I am also interested in programming environments, design and coding styles, and software engineering principles. Most of my work is on language semantics and implementation, focussing on aspect-oriented languages in particular. I also study type theory, game semantics, and category theory.

I have a number of ideas partially implemented, including a variety of Aspect SandBoxes, including ones that support:

  • Statically-typed AspectJ-like dynamic join-points
  • Demeter-J data join-points (both dynamic and compiled visitors)
  • Temporally complete program-flow constructs (cflowabove) (and an almost complete implementation in AspectJ 1.0).
  • Continuation-based semantics for dynamic join points.

For more details, you can examine my publications, provided here solely for timely dissemination of scholarly research. Some papers are copyright assigned to other organizations, such as ACM, Usenix, and Springer.

Previously, I tried my hand at efficient VM implementations of multiple-dispatch. My dispatcher for the Sun 1.3 JVM is 1.4 times faster than the classic VM, and 5 times faster than the Hotspot VM. Unfortunately, even for MD-intensive applications (Swing, AWT, etc), multi-dispatch operations involve less than 4% of the program execution time. So, going 5 times faster isn't a sustantial performance win (but it is a win). The key benefit is much shorter, simpler, less-brittle code. See my best-student-paper at COOTS paper and presentation for more details. An earlier version of this work was presented as an OOPSLA poster: here are the abstract and the poster itself.

My Erdös number is currently 4: Wand -- Meyer -- Kleitman -- Erdös
in 2001, it was 5: Szafron -- MacCallum -- Hoenslaers -- Fodor -- Erdös
and before that it was almost 3, but no paper came from my NSERC work with Riemenschneider, a 2 (Sharma -- Erdös).

Ocaml Revised mode for Emacs
SLaTeX mode for emacs This requires mmm-mode 0.4.8 screenshot
Literate Haskell multi-mode for emacs This requires mmm-mode 0.4.8
AspectScheme v.2 PLaneT archive
AspectScheme v.1 PLaneT archive
Revised syntax CaML P4 parser w/o objects, with infix definitions reinstated