Michael Parker

Got my undergrad from Texas A&M in '91. While I was there I fell in love with the Lisp Machine hardware, operating system, and both major dialects of Lisp. Somehow I also managed to do a fair bit of Forth and C++. I've been earning my living with C++ since I graduated, but manage to keep my hand in Lisp in my spare time.

I've got a passion for old computers, which you can find out more about here .

I'm also interested in philosophy, history, politics, and international relations.

My C++ code generally gets tested under Visual C++, and the Common Lisp tends to get tested under Xanalys LispWorks and Symbolics Genera. The lisp libraries all have defsystem files for mk:defsystem .

Update: The Symbolics is for sale.

I don't use it as much lately as I used to, and the wife wants to put the computer room to other uses. It's a Symbolics XL1200 with 8MW RAM, late-style monochrome display, 1 800mb ESDI drive currently configured as boot and paging drive, 4gb bootable SCSI holding main filesystem, and CD-ROM drive, all Symbolics software (Joshua, Statice, CLOS, CLIM, C, X-Windows, FTP, NFS etc). No paper manuals (fortunately! -- they fill a wall), but it's all online. $3000 obo.

My code is covered by a BSD-style license.

Here's some code I've written that I've found useful:

Text Utilities

This library includes a very fast regex engine (5-20x faster than GNU regex), a lispy implementation of AWK, and a lexical-analyzer generator. It also includes a test program for GNU regex that replicates the speed tests in the regex-test package, for use as a comparison.


Generalized binding

WITH is a macro that does for binding constructs what loop does for iterative ones.


Miscellaneous CL utilities

Provides nlet (a Scheme-style let), bcond (a Scheme-style cond which allows the result of the condition to be passed to the consequent clause), as well as a few other functions. Also a generalized reference system, so you can get and set lists, arrays, strings, hashtables etc polymorphically. This is not yet a full generalized container system, but it's a handy first step. Also includes a portable locative facility built using the generalized ref system. More info here.



Michael Parker
1