Self-hosting Scheme compiling to JavaScript (very incomplete proof-of-concept) [stalled]
 
 
 
 
 
 
Go to file
Mike Gerwitz 937aefe00c
UNFINISHED: Years-long uncommitted changes
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!
2020-02-23 01:07:04 -05:00
bootstrap UNFINISHED: Years-long uncommitted changes 2020-02-23 01:07:04 -05:00
.gitignore Add Makefile.am for bootstrapping 2018-09-10 23:07:54 -04:00
COPYING Add README.md and COPYING 2017-08-21 02:19:36 -04:00
Makefile.am Add Makefile.am for bootstrapping 2018-09-10 23:07:54 -04:00
README.md UNFINISHED: Years-long uncommitted changes 2020-02-23 01:07:04 -05:00
autogen.sh Add Makefile.am for bootstrapping 2018-09-10 23:07:54 -04:00
configure.ac Add Makefile.am for bootstrapping 2018-09-10 23:07:54 -04:00

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.