R7RS Scheme LISP compiler for GLLV bytecode, written to work in R3RS
Go to file
Peter McGoron 1e93de26d5 fix set and trie, add compat COND-EXPAND for chez 2024-09-05 03:03:22 -04:00
miniscm trie: add with test 2024-09-04 02:16:10 -04:00
COPYING add doubly linked lists, tests, minischeme 2024-08-22 20:05:49 -04:00
Makefile minischeme: add char 2024-08-22 21:51:25 -04:00
README.rst miniscm: add mutable string emulation and char->integer 2024-08-26 17:52:19 -04:00
chez-compat.scm fix set and trie, add compat COND-EXPAND for chez 2024-09-05 03:03:22 -04:00
doubly-linked-list.scm add sets 2024-08-29 22:24:33 -04:00
set.scm fix set and trie, add compat COND-EXPAND for chez 2024-09-05 03:03:22 -04:00
tests.scm trie: add with test 2024-09-04 02:16:10 -04:00
trie.scm fix set and trie, add compat COND-EXPAND for chez 2024-09-05 03:03:22 -04:00
util.scm trie: add with test 2024-09-04 02:16:10 -04:00

README.rst

=======
UNSLISP
=======

R7RS compiler written in a basic form of Scheme. Compiles to Universal
Service GLLV bytecode.

License: GPL-3.0-only

-------------------
Source Restrictions
-------------------

Although the compiler handles all of R7RS, the source of UNSLISP is
designed to be used by a severely limited Scheme interpreter, which

* lacks ``call/cc``, ``call-with-values``, etc
* lacks user definable macros
* only uses required features from R3RS
  (except ``open-input-port``, ``close-input-port``, ``read-char``,
   ``open-output-port``, ``close-output-port``, ``write-char``)
* has fixnums only
* only uses immutable strings
* does not use "load" recursively

The goal is to have the compiler run under MiniScheme in DOS.