Skip to content

jeremyschlatter/chime

Repository files navigation

chime

An interpreter for Paul Graham's Bel programming language.

Try it out in your browser.

To run it locally, download a binary from the release page.

Or to build from source, install Stack and run stack run from the repository root.

status

Good enough for learning and playing with Bel, not yet good enough to use in anger.

Everything in the spec is implemented except for threads and syscalls.

Every REPL example in the spec works as shown except for a few cases where the spec is slightly inconsistent (eg the text shows a function returning a truthy value as t but the bel.bel implementation returns more info than that). In those cases Chime follows the behavior of bel.bel.

Some optimization work has been done, but code still runs very slowly.

The interpreter has had very little usage so far, and there are surely many improvements that one would wish for. Probably some incorrect behavior, as well.