/believe

A Bel Lisp interpreter built with C, written as a book/literate program (archived)

Primary LanguageTeXMIT LicenseMIT

Believe

Originally builty by Lucas S. Vieira <lucasvieira@protonmail.com>.

Introduction

Please note that this project is currently archived.

The goal of this project is to provide a fully-functioning implementation of the Bel language, proposed by Paul Graham. The main goal is not to provide performance; instead, it is supposed to be a didatic approach to implementing a Lisp interpreter.

The code here contained is also a study on how to build a Lisp interpreter from scratch in C. Given that Bel is so simple and is supposed to be a formalism before a commercial language, it seems like the perfect didatic resource to do so.

Here are some useful links with language resources:

This project was also implemented as a proper book, so it is supposed not only to be compiled, but also to be read. All the development was made in the believe-literate.org file, though the book was exported to LaTeX and the code was exported to a C source file.

Reading

This project was implemented as an experiment with literate programming, so it can be read in PDF form. Just check the believe-literate.pdf file, or check out believe-literate.tex to see a LaTeX export of the book.

Alternatively, most Git services are able to render Org files properly, so you can check believe-literate.org on your browser.

Compiling

All the compilation steps are done through a Makefile. You can refer to further information within the chapter Tools and scripts on the book.

Licensing

This code is distributed under the MIT License. See the book and the LICENSE file for details.