An implementation of R7RS in Racket
Racket Scheme
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

r7rs Build Status

This is an implementation of R7RS "small" in Racket. To use it, install the package and use #lang r7rs in your programs.

$ raco pkg install r7rs
#lang r7rs

(import (scheme base)
        (scheme write))

(display (string-append "Hello, " "world!"))

Current Support

All of the libraries defined in R7RS are available. However, there are a few minor missing features or inconsistencies:

  • (scheme base) — Implemented except for include-ci. Furthermore, the define-library form is restricted to be more compatible with the Racket module system.
  • (scheme process-context) — All bindings are available, but exit and emergency-exit are the same, and exit does not properly call outgoing dynamic-wind thunks.

All other libraries are fully supported.