sigscheme /

Filename Size Date modified Message
171 B
234 B
12.7 KB
1.6 KB
15.6 KB
68.6 KB
3.3 KB
1.9 KB
3.9 KB
139 B
149 B
35.1 KB
243 B
534 B
1.3 KB
152 B
305 B
849 B
166 B
2.1 KB
What's SigScheme

SigScheme is a R5RS Scheme interpreter for embedded use.


  Anonymous svn repository:

See following files for further information.

  - doc/spec.txt: specifications of SigScheme
  - QALog:        quality assurance state

Please report us if you find a problem. And if you have a time, run
'' and send us the result regardless of PASSed or FAILed. It
greatly helps the development, especially for non-PC platforms.



- Conforms to R5RS basically (not fully)
- R5RS hygienic macros (experimental)
- Supports Following SRFIs
  - SRFI-0  : Feature-based conditional expansion construct
  - SRFI-1  : List Library
  - SRFI-2  : AND-LET*: an AND with local bindings, a guarded LET* special form
  - SRFI-6  : Basic String Ports
  - SRFI-8  : receive: Binding to multiple values
  - SRFI-9  : Defining Record Types
  - SRFI-22 : Running Scheme Scripts on Unix (partial)
  - SRFI-23 : Error Reporting Mechanism
  - SRFI-28 : Basic Format Strings
  - SRFI-34 : Exception Handling for Programs
  - SRFI-38 : External Representation for Data with Shared Structure (partial)
  - SRFI-43 : Vector library
  - SRFI-48 : Intermediate Format Strings
  - SRFI-55 : require-extension
  - SRFI-60 : Integer as Bits (partial)
  - SRFI-69 : Basic hash tables
  - SRFI-95 : Sorting and Merging
- R6RS: R6RS characters (partial and preliminary)
- Multibyte character encodings support
- define-macro
- let-optionals* for optional argument processing
- Partial SIOD compatibility

See doc/spec.txt and doc/design.txt for furtuer information.

How to build

GNU make is requied to build.

Run ./configure with some options at the top directory.

  $ ./configure [--enable-conf=CONF] [--enable-default-encoding=ENCODING]

(1) --enable-conf=CONF

  This specifies a base configuration set. Select one from the list below
  suitable for your purpose.

    - full:    compile with full features but broken ones
    - regular: (default) compile with typically needed features
    - small:   compile with primary features only
    - r5rs:    compile with strict R5RS conformances
    - siod:    emulate some SIOD features and bugs
    - dev:     developer-friendly configuration
    - uim:     configure for uim

(2) --enable-default-encoding=ENCODING

  SigScheme normally selects UTF-8 as default encoding. You can change it by
  this option as follows.

    $ ./configure --enable-default-encoding=eucjp

  Following encodings can be specified.

    - utf8
    - euccn
    - eucjp
    - euckr
    - sjis

(3) --enable-ENCODING

  In addition to (2), you can enable other optional and switchable character

    $ ./configure --enable-default-encoding=eucjp --enable-eucjp --enable-sjis

Then type 'make' at the top directory.

  $ make


  $ make check


  $ make install

How to use

To run SigScheme in interactive mode, type as follows.

  $ sscm

To execute a Scheme script, specify it as argument.

  $ sscm <filename>


Some parts of this software had been funded by IPA (