Mike SperberContactPapersSoftware


Here is a partial list of software I've hacked on or maintain. Most of it's available on the net. If you're interested in any of the others, let me know.

The Lula system for theater lighting control

This is a sophisticated package for theater lighting design and control.

Scheme 48, a portable implementation of Scheme

I've implemented the prototype for the C FFI.

scsh, the Scheme Shell

This is a variant of Scheme 48 intended for systems programming. I seem to be one of the maintainers, starting with version 0.6.

The SU Net package for scsh

This is a collection of libraries for common internet protocols for the scsh Scheme Shell.

PLT Scheme

This is a large implementation of Scheme. I've pestered the maintainers with bug reports and provided a few minor patches.

The Essence parser generator for Scheme

This is a SLR(k) and LR(k) parser generator for Scheme, implemented using advanced partial evaluation technology.

Peter Thiemann's PGG program generator generator

This is a sophisticated offline partial evaluation system. I've implemented some parts of the user environment, and hacked on some others.

Oleg Kiselyov's SSAX/SSXML framework

This is a library for XML programming in Scheme. It includes a validating parser for XML and an S-expression-based representation for XML documents. I've created ports for Scheme 48 and the upcoming 200 version of PLT Scheme. Until the patches for this are integrated in the main distribution, here is a tarball with the current versions of the ports.

XEmacs, the next generation of Emacs

I've written a few thousand lines of code for XEmacs. In particular, I've written the code which determines the various paths at startup.

EFS, an Emacs package for transparent access to ftp sites

I seem to be stuck with maintaining this baby. Since taking over, I've mainly ported the thing to XEmacs 20, and fixed a gazillion bugs.

Dired, an Emacs mode for editing directory trees, both local and remote, similar to traditional file managers.

Just as with EFS, I am the current maintainer. I have written the XEmacs port, the XEmacs user interface for it, added a bunch of features and fixed many bugs


This is a LaTeX2e class I wrote for formatting papers in ACM SIGPLAN proceedings at the request of Simon Peyton Jones for ICFP 2002. Unlike the terrible-looking styles on the SIGPLAN page, sigplan-proc.cls conforms to the ACM Guidelines and is fully LaTeX2e-compliant.

Picture Language for PLT Scheme

This is a straightforward port of the picture language from Structure and Interpretation of Computer Programs to PLT Scheme. Both a regular module and a teachpack are included.

Gambit-C, an implementation of Scheme

I've cooperated with Marc Feeley, Gambit-C's author, on the Emacs user interface.

Port of the Gunzets package to FreeBSD

This is an XFree86 module for driving the Gunze touchscreen panels that come with Xybernaut wearables, ported to FreeBSD. It's available here, along with some hints for installing FreeBSD on the Xybernaut MA.

A PowerPC backend for lcc, a retargetable C compiler

This is joint work with Devin Reade of Myrias, building on earlier work by Cliff Click at Motorola.