Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A second Scheme implementation.
tree: 560ea8d8af

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.gitignore
CHANGES Version bump to 0.3.
LICENSE Added LICENSE file.
Makefile
README
buffer.c
error.c Added assertions to check for programming errors.
eval.c
gc.c
object.c
read.c
rescheme.c
rescheme.h
rescheme_p.h
stack.c
symtab.c
write.c

README

ReScheme - A second Scheme implementation
=========================================

  ReScheme is a "sequel" to my earlier Scheme interpreter, bs. Just as bs was
written while I was following Peter Michaux's Scheme From Scratch articles,
ReScheme will be following his upcoming Royal Scheme series.
  See the LICENSE file for copyright and licensing information.

Compilation and Usage
=====================

  If you don't have clang installed, change the first line of Makefile to
"CC = gcc", or whatever is appropriate. There are no external dependencies.

So far, ReScheme is just a pretty-printer, and doesn't evaluate expressions.
Integers, characters, booleans, null, symbols, and strings have been added.

    $ make
    $ ./rescheme
    > 123
    123
    > #b1011
    11
    > #x-14bead
    -1359533
    > #\a
    #\a
    > #\newline
    #\newline
    > #T
    #t
    > ()
    ()
    > asdf-123
    asdf-123
    > <=>
    <=>
    > ReScheme
    rescheme
    > "Hello, World!"
    "Hello, World!"
    > <Ctrl-D>
    $


Links
=====

https://github.com/ingramj/bs
  My previous Scheme interpreter. Buggy, but it was fun to write.

http://peter.michaux.ca/index#Scheme%20from%20Scratch
https://github.com/petermichaux/bootstrap-scheme
  Peter's original Scheme from Scratch articles, and the Bootstrap Scheme
  interpreter. Several people followed this series and wrote their own
  implementations.

http://peter.michaux.ca/index#Royal%20Scheme
https://github.com/petermichaux/royal-scheme
  Peter's Royal Scheme articles (coming soon), and code.
Something went wrong with that request. Please try again.