2018-02-08 23:40:00 -05:00
|
|
|
|
# Ulambda Scheme
|
2017-08-21 02:19:36 -04:00
|
|
|
|
<!--
|
2018-02-08 23:40:00 -05:00
|
|
|
|
Copyright (C) 2018 Mike Gerwitz
|
2017-08-21 02:19:36 -04:00
|
|
|
|
|
2018-02-08 23:40:00 -05:00
|
|
|
|
This file is part of Ulambda Scheme.
|
2017-08-21 02:19:36 -04:00
|
|
|
|
|
|
|
|
|
Copying and distribution of this file, with or without modification, are
|
|
|
|
|
permitted in any medium without royalty provided the copyright notice and
|
|
|
|
|
this notice are preserved. This file is offered as-is, without warranty
|
|
|
|
|
of any kind.
|
|
|
|
|
-->
|
|
|
|
|
|
2020-02-22 23:59:21 -05:00
|
|
|
|
**This project is very incomplete, has stalled, and is unlikely to be
|
|
|
|
|
completed.**
|
|
|
|
|
|
2018-02-08 23:40:00 -05:00
|
|
|
|
Ulambda Scheme (also abbreviated "Y Scheme") is a self-hosting Scheme.
|
|
|
|
|
The primary compiler target is JavaScript.
|
2017-08-21 02:19:36 -04:00
|
|
|
|
|
|
|
|
|
```
|
2018-08-10 23:22:14 -04:00
|
|
|
|
\\ // \\\
|
|
|
|
|
\\ // \\\
|
|
|
|
|
\\// Ulambda \\\
|
|
|
|
|
\\\ Scheme ///
|
|
|
|
|
\\\ ///
|
|
|
|
|
\\\ ///
|
2017-08-21 02:19:36 -04:00
|
|
|
|
```
|
2020-02-22 23:59:21 -05:00
|
|
|
|
|
|
|
|
|
## 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`](./bootstrap/rebirth/test.scm).
|
|
|
|
|
|