Jon Jon

Welcome to Jon Cook's old Homepage.

Unless you are looking for old versions of my software, please go to my new page.

About Me

I am in my fourth year of a Ph.D. in Informatics at the University of Edinburgh. I am a member of LFCS (the Laboratory for Foundations of Computer Science), part of the School of Informatics. My supervisor is Dr. Stephen Gilmore. This year I am a CS2 Teaching Assistant.

I did my degree in Mathematics at Christ's College, which is part of Cambridge University. I then did the postgraduate Diploma in Computer Science at Hughes Hall, another Cambridge college.

You can browse my CD collection, and see a picture of me working. There are also pictures of my family. Here are some pictures from my visit to POPL 2003 in New Orleans with my office mate Sam.


P# is a Prolog implementation which translates Prolog to C# source code. This allows interoperation between Prolog and C#, and in particular allows you to combine Prolog back-ends with C# front-ends. P# is based on Prolog Cafe, a tool which translates Prolog to Java.

License: All versions of P# up to and including the latest version listed below, and all example applications provided on this webpage, are covered by the GNU General Public License version 2 or (at your option) any later version.

Download P# 1.1.3.

Download P# 1.1.2.

P# 1.1 (the first version to include concurrency support).

P# 0.1 is still available.

Stephen Gilmore's P# page.


Bdbj is a debugger for programs written in pure Java, which allows the user to step both backwards and forwards through the code. Conventional debugging concepts such as breakpoints and watches are also supported. The debugger can be used with a command line or a graphical interface. In the latter case there is support for editing and compiling the source code. The papers above discuss the implementation and motivation of this project in more detail.

License: All versions of bdbj up to and including the latest version listed below, including both the modifed Kaffe, and additional Java code, are covered by the GNU Lesser General Public License, version 2.1.

Download bdbj 1.2.1, which works with Kaffe 1.0.7.

bdbj 1.2 beta is still available, but contains many bugs.

bdbj 1.1 is also still available.