81 lines
2.0 KiB
Groff
81 lines
2.0 KiB
Groff
|
.TH scheme48 1
|
||
|
.\" File scheme48.man: Manual page template for Scheme 48.
|
||
|
.\" Replace scheme48 with the name of your default image and /usr/local/lib/scheme48 with the
|
||
|
.\" directory containing scheme48vm and default image.
|
||
|
.SH NAME
|
||
|
scheme48 \- a Scheme interpreter
|
||
|
.SH SYNOPSIS
|
||
|
.B scheme48
|
||
|
[-i image] [-h heapsize] [-a argument]
|
||
|
.SH DESCRIPTION
|
||
|
.B scheme48
|
||
|
is an implementation of the Scheme programming language as described in
|
||
|
the
|
||
|
.I "Revised^4 Report on the Algorithmic Language Scheme."
|
||
|
A runnable system requires two parts, an executable program that implements
|
||
|
the Scheme 48 virtual machine, and an image that is used to initialize
|
||
|
the store of the virtual machine.
|
||
|
.B scheme48
|
||
|
is a shell script that starts the virtual machine with an image that runs
|
||
|
in a Scheme command loop.
|
||
|
.PP
|
||
|
The
|
||
|
.B scheme48
|
||
|
command loop reads Scheme expressions,
|
||
|
evaluates them, and prints their results.
|
||
|
It also executes commands, which are identified by an initial comma character.
|
||
|
Type the command
|
||
|
.I ,help
|
||
|
to receive a list of available commands.
|
||
|
.PP
|
||
|
The
|
||
|
.B \-h
|
||
|
option causes
|
||
|
.IR heapsize
|
||
|
words to be allocated for both semispaces of the copying garbage
|
||
|
collector. One word is four bytes. Cons cells are currently 3 words,
|
||
|
so if you want to make sure you can allocate, say, a million cons
|
||
|
cells, you should specify
|
||
|
.B \-h
|
||
|
6000000 (actually a little more, to account for the initial heap
|
||
|
image and breathing room).
|
||
|
.PP
|
||
|
The
|
||
|
.I ,dump
|
||
|
and
|
||
|
.I ,build
|
||
|
commands put heap images in files.
|
||
|
The
|
||
|
.B \-i
|
||
|
option causes the initial heap image to be taken from file
|
||
|
.IR image .
|
||
|
The
|
||
|
.B \-a
|
||
|
option causes a string to be passed as the argument
|
||
|
to an image generated using the
|
||
|
.I ,build
|
||
|
command.
|
||
|
.PP
|
||
|
.nf
|
||
|
> ,build (lambda (a) (display a) (newline)) foo.image
|
||
|
> ,exit
|
||
|
$ scheme48 -i foo.image -a mumble
|
||
|
mumble
|
||
|
$
|
||
|
.PP
|
||
|
.fi
|
||
|
.SH FILES
|
||
|
.TP 40
|
||
|
.B /usr/local/lib/scheme48/scheme48vm
|
||
|
the virtual machine.
|
||
|
.TP
|
||
|
.B /usr/local/lib/scheme48/scheme48.image
|
||
|
the default image.
|
||
|
.SH BUGS
|
||
|
Procedure calls with more than 63 explicit arguments might not work.
|
||
|
|
||
|
.I max
|
||
|
and
|
||
|
.I min
|
||
|
don't do inexact contagion.
|