Tim Bradshaw

Some things I have made.

Larger things

Some of which are merely piles of smaller things, related largely by their shared history and authorship. There should generally be some documentation and infrastructure to build and install things here.

xkcd-936: random passphrases

Based on xkcd 936. Python 2.7 or 3. Documentation / Source code.

Warranted commands

MacOS now has protections which are completely orthogonal to the traditional Unix file access controls. These can make running unattended periodic tasks difficult. A solution is to have a single program which you ‘bless’ with full disk access and which can then run other things. To make this not insanely dangerous that program should allow you to specify what it will, and won’t run. That’s what warranted is: a tool like sudo but without the implication of access as another user, and with a better (I think) configuration syntax. It’s written in Racket, and you’ll need a Racket installation to build it.

Documentation / Source code

Conduit packages for Common Lisp

Conduit packages are packages which serve as conduits for one or more underlying packages: they let you make a system which consists of several implementation packages available through one package, or to provide packages which extend other packages, or replace some symbols they export with symbols from a different package.

Documentation / Source code

Some Common Lisp tools

A collection of fairly miscellaneous Common Lisp tools, which I have written over the years in order to generally get stuff done. Slowly growing as I unearth things and publish them.

Documentation / Source code

Some Common Lisp hacks

A collection of small Common Lisp hacks I’ve written over the last thirty-odd years. Some of them are genuinely useful, some of them are little more than toys written long ago to prove a point on comp.lang.lisp. They are largely independent of each other.

Documentation / Source code

Smaller things

Shards and fragments which may be interesting to someone.

A toy Lisp reader: reeder

Reeder is a toy table-driven Lisp reader, written in Common Lisp. I wrote it mostly to see how hard it would be. It is a toy, it probably has bugs and it may be hard to build if you are not me. But it is extensible and configurable.

Documentation / Source code


Artifacts from a past I am forgetting.

(None yet.)

Some other things I have made.