This page exists mainly to satisfy some deep psychological desire to express everything as lists (I blame LISP).

lisp logo

Languages

During my life I’ve developed in a large number of programming languages. I’ll attempt to summarise here:

Programming Languages
AMOS 1990-1995 Hobby
AmigaBASIC 1989-1995 Hobby
BBC BASIC 1983-1988 Academic
C++ 1989-2001 Academic + Commercial
C 1989-Current Academic / Commercial
Clojure 2007-2011 Commercial / Research
Common Lisp 1997-2010 Academic / Research
Cue 2020-Current Commercial
Erlang 2008-2011 Commercial / Research
Go 2009-Current Commercial / Research
IBM JCL 1998-2000 Commercial
IBM RPG 1998-2000 Commercial
Java 1999-2008 Commercial
Javascript / ECMAScript 1995-Current Academic / Commercial
Microsoft Visual BASIC 4,5 and 6 1998-2000 Commercial
Motorola 68000 Assembly 1989-1995 Hobby
PHP 2011 Commercial
Progress 4GL 1999-2000 Commercial
Prolog 1998 Academic
Python 1999-Current Commercial / Research
Racket 2010-Current Research
Ruby 2000-2003 Commercial
Scheme 1997-Current Academic / Research
Sinclair BASIC 1983-1989 Hobby
Sun UltraSparc Assembly 2000-2008 Hobby
x86_64 Assembly 2008-Current Hobby
XSLT 1999-2017 Commercial

Operating Systems

I’ve developed software for a range of operating systems:

Operating Systems
Amiga Workbench / Kickstart 1989-1995 Hobby / Academic
BeOS (R3 - R5.1) 1996-2001 Hobby
Linux (kernel 1.09 onwards) 1994-Current Hobby / Academic / Commercial
FreeBSD 1998-Current Hobby / Commercial
OpenBSD 2000-Current Hobby / Commercial
SunOS / Solaris (5.7/7 - 5.11 / 11) 1998-2011 Hobby / Commercial
OpenSolaris and derivaties 2010-Current Hobby
Minix 1995-2000 Academic
Minix3 2005-Current Hobby
QNX RTP / Neutrino 2 2000-2003 Commercial
Plan9 1998-Current Hobby
L4 / Genode 2016-Current Hobby
Windows 95, 98, ME 1995-2000 Academic / Commercial / Hobby
Windows NT 3.5 / 4 / 2000 1995-2002 Academic / Commercial
Digital UNIX 1995-1998 Academic
MS DOS 1988-1992 Academic
IBM OS/400 1998-2000 Commercial