R7RS Scheme LISP compiler for GLLV bytecode, written to work in R3RS
Go to file
Peter McGoron 1b56759726 miniscm: add mutable string emulation and char->integer 2024-08-26 17:52:19 -04:00
miniscm miniscm: add mutable string emulation and char->integer 2024-08-26 17:52:19 -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
doubly-linked-list.scm add doubly linked lists, tests, minischeme 2024-08-22 20:05:49 -04:00
tests.scm add doubly linked lists, tests, minischeme 2024-08-22 20:05:49 -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.