Home > sketch

sketch

Sketch is a project mainly written in C and C++, it's free.

A toy Scheme interpreter written in C

Sketch is a toy Scheme interpreter written in C. The project's in its infancy. The primary reasons to do it were: to scratch an itch; to figure out how to implement some of the interesting features of Scheme w/o looking up existing implementations; and to try to get decent performance while keeping the code very simple.

The guiding principle is simplicity of code. The next concern is performance, but simplicity will usually be much more important to me.

The plan is to get core features of Scheme working, as outlined in R5RS: http://www.schemers.org/Documents/Standards/R5RS/ In particular, I want lexical scoping, closures, and continuations to work. There will be some sort of garbage collection that is /not/ reference counting.

I'm documenting my progress as I go along in a series of blogposts in Russian at my blog (http://avva.livejournal.com). They're structured as a series of 'fits', and code that's ready by the end of each fit will be so labeled in this repo. It'd be nice to finish the core functionality in 8 fits.

Previous:neolibs