| • | CV | • | Gallery | • | Papers | • | Hosc | • | Home | • |
|---|
I come from an AI/Logic/Formal Reasoning background, and in my previous life as a college professor down under, I taught Java, formal methods, distributed and threaded programming on Linux, as well as Beowulf cluster programming (pvm, and MPI).
I'm currently working on several projects. I designed, built and continue to maintain IOP, an distributed actor platform for the interoperation of formal reasoning tools.
This tool forms the basis of SRI's Pathway Logic Framework, and as a team member I maintain the website, IOP, and the jlambda language interpreter that the Pathway Logic system heavily relies upon. IOP is written in vanilla POSIX C and runs on most UNIX platforms that I have easy access too. The jlambda language is a fast, efficient, minimalistic, call-by-value, lexically scoped Lisp or Scheme like CPS-language with closures. It is implemented in Java.
My work at Loyalty Ventures involves maintaining a small programmable agent that acts as a web assistant. The underlying interpreter in the agent is again a fast, efficient, minimalistic, call-by-value, lexically scoped Lisp-like language. The agent and interpreter were originally written in Java, and it fell to me to translate this to a more universal language: C with some C++ sprinkled in here and there. This work was largely carried out on Windows, though I had my own port of the language to Linux, so I could use tools like Valgrind. I also ended up having to port it too Mac OS X, though this version of the agent is no longer a high priority. Because it is in C I had to write a compactifying garbage collection system for the beast. Currently I'm perfecting browser toolbar peripherals (both IE and Firefox) that enable the user to interact with the agent via these same toolbars. This involves COM on the IE side, and XPCOM, and JavaScript on the Firefox side.
Finally I'm also working, along with Gul Agha, Carolyn Talcott, and
Scott Smith on a book about concurrent distributed programming, and
the Actor model of computation. An elaboration of our well known early
work "A Foundation for Actor Computation" that appeared in the first
issue of the Journal of Functional Programming.