Skimp

Skimp is my own unfinished and minimalist Scheme interpreter. The design is simplistic, and so far has the following technical characteristics:

It speaks

Early days yet, but during a couple of enthusiastic hacking sessions while on Summer holiday in Italy, Skimp started talking back. It's a surreal moment when a new interactive language interpreter come to life... like something with legs just strolled out of your primordial C program and asking for a pan galactic gargle blaster.

Welcome to Skimp 0.000001
> 42
42
> (+ 1 2)
3
> (define f (lambda (n) (+ 1 n)))
#<procedure:(n):((+ 1 n))>
> (f 41)
42

Well it's not much but it's a start... the foundations are in place (garbage collection, reader, pretty printer, symbols, cons/car/cdr, procedures and environments, eval/apply with the correct variable scoping). But I think it will be quite some time before I can report that this page is being served up by Skimp on a ZX Spectrum :-)

Wishlist

Some of my longer term goals for this project are:

Relevant texts

Lisp dialects - what can I say, it's addictive. These are my current favourites. (Stangely, there's one for each decade.)

* This is the one that got me started with Scheme. I expect that anyone who reads this book will finish up becoming a raving mad Scheme addict.

Other 8-bit Lisps

I have found references to the following commercial or academic 8-bit Lisps (although I was never lucky enough to use any of these when I was a nipper and the Z80 was my weapon of choice, back in my day we had assembler and BASIC and we thought we were lucky!)

Google and I have found the following modern 8 bit Lisp projects, in various states of completeness:

Lisp quotes