Here are a number of software packages that me and my students have written over the last few years. They might prove useful to other people. They are released under various open source licences. I am gradually putting these up on this web-site, if I have mentioned something to you that I haven't yet put up here, email me and I will expedite it.
This is a set of Java programs to convert between two notations used in knot theory, viz. the Dowker-Thistlethwaite and braid notations. Download the source code here.
A Java package for creating and manipulating Non-Uniform Rational B-Splines (NURBS), a representation commonly used for curves and surfaces in computer graphics. This package allows for the creation of NURBS of arbitrary dimensionality in an arbitrary-dimensional euclidean space. Download the source code here.
This is a plugin for the BlueJ program, written as part of Craig Bishop's MSc work at Kent. It allows students to suggest roles for variables in their programs and uses a set of heuristics to determine whether the variables do appear to be playing those roles. Download the plugin here.
Written by Mark Alston as part of his MSc work, this program provides a way of visualising DNA and protein sequences at various levels of granularity by using a colour-merging technique. Please contact me for a copy of this software.
Written by Lawrence Beadle as part of his PhD work, this software provides a well-structured, carefully documented, and easily expandable tree-based genetic programming system written in Java. A particular feature of this system is that it implements the semantic analysis described in our papers. See the web-site here.
This is the initial version of the evolution-based sound synthesis system, described in my AISB paper from 1999 and the subsequent Leonardo paper. See the web page describing EvolSynth for more details. This is now rather dated and a new program will be available in the next year or two.
The following pieces of software are not for general use, but are copies of particular pieces of software used in specific papers. That is, I put them up here for people wanting to extend or replicate the results in those papers.