Mike Gerwitz
937aefe00c
These changes have been sitting here uncommitted for a almost a couple of years now. It's become clear that, while this project deeply interests me, I do not have time for it. Implementing a full-fledged Scheme is simply not something I have time to do. The original goal of this project is also something I'm still interested in, but will not have time to do any time soon. But it has been folded into broader, more grand ideas. I hope that this will, at the very least, be interested to someone else. It is terribly lacking in certain cases, e.g. it does not even implement pairs properly, because I never needed to. See also https://github.com/google/schism, which compiles to WASM. Happy hacking! |
||
---|---|---|
bootstrap | ||
.gitignore | ||
COPYING | ||
Makefile.am | ||
README.md | ||
autogen.sh | ||
configure.ac |
README.md
Ulambda Scheme
This project is very incomplete, has stalled, and is unlikely to be completed.
Ulambda Scheme (also abbreviated "Y Scheme") is a self-hosting Scheme. The primary compiler target is JavaScript.
\\ // \\\
\\ // \\\
\\// Ulambda \\\
\\\ Scheme ///
\\\ ///
\\\ ///
Bootstrapping
Ulambda is designed to be bootstrappable by anyone in the environment in which it is designed to run: the web browser. Alternatively, it can be bootstrapped using Node.js.
Via Web Browser
Simply visit bootstrap/bootstrap.html
in a modern browser and follow the
provided instructions.
You can also view it at https://mikegerwitz.com/ulambda/bootstrap.html.
Via Node.js
$ ./autogen.sh && ./configure && make
Current State
As mentioned above, this project has stalled. The current state of
development is summarized in the Viability Test Suite in
bootstrap/rebirth/test.scm
.