Chez Scheme Version 8.4

Distribution Contents and Installation Instructions
Cadence Research Systems
www.scheme.com

NOTE: This version is out-of-date

A newer, open-source version of Chez Scheme is available at github.com/cisco/ChezScheme.

Overview

Chez Scheme is an efficient and reliable implementation of Scheme based on an incremental optimizing compiler that produces efficient code and does so quickly. Chez Scheme Version 8.4 is an implementation of R6RS Scheme along with numerous language and programming environment extensions.

Petite Chez Scheme is a complete Scheme system that is fully compatible with Chez Scheme but uses a fast interpreter in place of the compiler. It was conceived as a run-time environment for compiled Chez Scheme applications, but is also useful as a stand-alone Scheme system. Programs written for Chez Scheme run unchanged in Petite Chez Scheme, as long as they do not depend specifically on the compiler, albeit not as quickly and without the debugging information generated by the compiler. In fact, Petite Chez Scheme is built from the same sources as Chez Scheme, with all but the compiler sources included.

Both systems are copyrighted by Cadence Research Systems and are distributed under license. Use of Chez Scheme requires a license fee, while use of Petite Chez Scheme does not. Petite Chez Scheme is freely redistributable, while Chez Scheme may not be redistributed in any form.

The threaded versions are the same as the nonthreaded versions but support multithreading (and multiprocessing on computers with multiple processors or processor cores) based on Posix threads. They are not quite as fast as the nonthreaded versions for single-threaded applications.

The 64-bit (Intel/AMD) versions available on some platforms support larger address spaces but also require more memory to operate due to the need to store the larger 64-bit addresses.

Complete online documentation for Chez Scheme and Petite Chez Scheme is available at www.scheme.com in the form of two books: The Scheme Programming Language, 4th Edition and the Chez Scheme Version 8 User's Guide. The former is also available in print form from MIT Press or from various online and local retailers.

The Scheme Widget Library (SWL) is a free windowing and graphics package. It includes an object system, a threaded windowing and graphics library, and various tools, including an editor and a window-based REPL (read-eval-print loop) window with tcsh-like history. It is distributed with online documentation in the form of the SWL Reference Manual, written by Oscar Waddell. SWL is copyrighted by Oscar Waddell. It is based on Tcl/Tk, which is copyrighted by the Regents of the University of California, Sun Microsystems, Inc., Scriptics Corporation, and other parties. SWL and Tcl/Tk are both open source and freely distributable. Details are contained within the SWL and Tcl/Tk distributions.

SWL is designed to run only in the nonthreaded, 32-bit versions of Chez Scheme or Petite Chez Scheme.

General Download Instructions

Petite Chez Scheme and SWL may be downloaded at no cost via the links in the Petite Chez Scheme section and/or Scheme Widget Library section below. Chez Scheme requires a license fee; if you have purchased a license, it may be downloaded via the links in the Chez Scheme section below.

Before you download Chez Scheme, Petite Chez Scheme, and/or SWL, please read the appropriate license agreement(s) below.

Do not proceed with the installation unless you agree to the terms of the license agreement(s). Use of Chez Scheme, which is compiler-based, requires a license fee. It cannot be redistributed. Use of Petite Chez Scheme, which is interpreter-based, does not require a license fee, and it may be redistributed. Petite Chez Scheme may be used as a stand-alone Scheme system or as an application-delivery vehicle for compiled code produced by Chez Scheme. Please refer to the license agreements and to Section 2.8 of the Chez Scheme Version 8 User's Guide for details.

Instructions for installing Chez Scheme, Petite Chez Scheme, and SWL and Petite Chez Scheme are given in the installation instructions section.

Distribution Contents

Release notes, etc.

Petite Chez Scheme

32-bit nonthreaded versions

64-bit nonthreaded versions

32-bit threaded versions

64-bit threaded versions

Scheme Widget Library (SWL)

Installation Instructions

Installation instructions are given below for the 32-bit nonthreaded versions of Chez Scheme. Installation of the 64-bit and threaded versions is similar.

Since SWL is not designed to run in the threaded or 64-bit versions, to run SWL you must install a nonthreaded, 32-bit version of Chez Scheme or Petite Chez Scheme to run SWL.

Windows installation

To install both Chez Scheme and Petite Chez Scheme under Windows, run csv84.exe. To install Petite Chez Scheme only (e.g., for home use or as part of a delivered application), run pcsv84.exe. Both also install SWL.

You may run Chez Scheme or Petite Chez Scheme by clicking on the appropriate desktop icons. If you did not deselect the option to set up the path variable to allow shell use, you can run Chez Scheme in a shell window by typing scheme or run Petite Chez Scheme in a shell window by typing petite. SWL is not available for Version 8.4, so source files will have to be prepared in a separate text editor.

Once installation has been completed, you can run Chez Scheme or Petite Chez Scheme under SWL by clicking on the SWL desktop icon or selecting SWL from the "Chez Scheme" program folder on from the start menu. You may run Chez Scheme or Petite Chez Scheme outside of SWL by clicking on the appropriate icons. If you did not deselect the option to set up the path variable to allow shell use, you can run Chez Scheme in a shell window by typing scheme, run Petite Chez Scheme in a shell window by typing petite, or start SWL from a shell window by typing swl.

Chez Scheme, Petite Chez Scheme, and SWL can be uninstalled via the add/remove programs icon in the control panel.

While it is okay to install Chez Scheme over an existing Petite Chez Scheme installation of the same version, we suggest you uninstall any earlier versions of Chez Scheme and/or Petite Chez Scheme before installing a new version.

Linux RPM installation

The easiest way to install Chez Scheme under Linux is via the rpm files if your Linux distribution supports yum, rpm, or some other mechanism for handling rpm files. The following instructions assume you are using yum.

To install Chez Scheme, run (as root):

yum install -nogpgcheck ChezScheme-8.4-1.i386.rpm

For Petite Chez Scheme, run instead:

yum install -nogpgcheck PetiteChezScheme-8.4-1.i386.rpm

To install SWL (after Chez Scheme or Petite Chez Scheme), run:

yum install -nogpgcheck SWL-1.3-1.i386.rpm

Once installation has been completed, you can run Chez Scheme in a shell window by typing scheme, run Petite Chez Scheme in a shell window by typing petite, or start SWL from a shell window by typing swl.

Chez Scheme, Petite Chez Scheme, and SWL can be uninstalled via yum with yum remove package-name, e.g.:

yum remove ChezScheme

Source rpm files for both Chez Scheme and Petite Chez Scheme (containing rpm SPEC and binary tar.gz files) are provided to allow the binary rpm to be rebuilt (via rpmbuild --rebuild) in case of incompatibility with installed libraries.

Debian and Ubuntu users might be able to convert rpm files into deb files using alien, e.g.:

alien -to-deb ChezScheme-8.4-1.i386.rpm

then install the deb file via:

dpkg -i ChezScheme-8.4-1.i386.deb

We have not tested this mechanism for installing Chez Scheme.

Mac OS X pkg installation

MacOS X 10.11 (El Capitan) and later: The package installer attempts to place the (Petite) Chez Scheme executable in /usr/bin and the library directory in /usr/lib, which are not writable even by root. To install (Petite) Chez Scheme you must instead use the tarball and follow the tarball instructions below, selecting a different installation root in the configure step, e.g., ./configure --installprefix=/usr/local.

Before installing Chez Scheme Version 8.4, we recommend that you first uninstall any earlier versions.

The easiest way to install Chez Scheme on the Mac is via the pkg files. To do so, unpack csv8.4-machine-type-1.pkg.tar.gz by double-clicking on it, then double-click on the resulting pkg file. To install Petite Chez Scheme, use pcsv8.4-machine-type-1.pkg.tar.gz instead. You will need the root (administrator) password to perform the installation. The package file installs an executable as /usr/bin/scheme (or /usr/bin/petite), which you can run in a new shell window by typing just scheme (petite), and a manual page, which you can access in a shell window by typing man scheme (man petite).

To install SWL, you must first install Tcl and Tk if they are not installed already. Then unpack swl1.3-machine-type-1.pkg.tar.gz by double-clicking on it, then double click on the pkg file. This will install the SWL application (in the Finder, select Go, then Applications, then SWL) and also the executable /usr/bin/swl in case you prefer to run SWL from a shell window.

SWL is designed to run only in the 32-bit nonthreaded versions of the system.

You can also install the packages from a shell as follows:

tar -xzf packagename.pkg.tar.gz
installer -pkg packagename.pkg -target /

The latter command must be run as root.

To uninstall Chez Scheme, remove /usr/lib/csv8.4, /usr/bin/petite, /usr/bin/scheme, /usr/share/man/man1/petite.1.gz, /usr/share/man/man1/scheme.1.gz, and /Library/Receipts/csv8.4-machine-type-1.pkg (/Library/Receipts/pcsv8.4-machine-type-1.pkg for Petite Chez Scheme). To uninstall SWL, remove /usr/lib/swl1.3, /usr/bin/swl, /Applications/swl.app, and /Library/Receipts/swl1.3-machine-type-1.pkg.

Tarball installation

To install Chez Scheme and/or Petite Chez Scheme from a .tar.gz file, first unpack the .tar.gz file. This will produce the directory csv8.4 containing the software. The file csv8.4/ReadMe contains installation instructions, but the following usually suffices:

cd csv8.4/custom
./configure
make install

The configure script recognizes several options. To build the threaded version, if both threaded and nonthreaded versions are available, pass the --threads option to configure; to build the 64-bit version, if both 32- and 64-bit versions are available, pass the --64 option. To enable relinking of the executable image against local libraries, use --force-relink; to disable use --noforce-relink. Run ./configure --help for more options and to see the default values for the options.

If you want to test the build before installation, consult the file csv8.4/ReadMe for instructions.

To install both Chez Scheme and Petite Chez Scheme, use csv8.4-machine-type.tar.gz. To install only Petite Chez Scheme, use pcsv8.4-machine-type.tar.gz instead.

For multiple .tar.gz files, it is safe and often desirable to unpack them into the same directory. You must run 'make distclean' between makes, then rerun './configure' for different machine types, however.

To install SWL, unpack swl1.3-src.tar.gz, which will produce the directory swl1.3. Edit Mf-install if necessary to change installation target directories. Finally, run

make install

in swl1.3. You will first need to install Tcl/Tk 8.3 or later, as well as Chez Scheme or Petite Chez Scheme, if not already installed.

NOTE: The SWL make file is set up to rebuild from source if Chez Scheme is installed and to use the binaries included in the tarball if just Petite Chez Scheme is installed. You must be running Chez Scheme to rebuild SWL from source, since rebuilding SWL requires the compiler.

SWL is designed to run only in the 32-bit nonthreaded versions of the system.

Once installation has been completed, you can run Chez Scheme in a shell window by typing scheme run Petite Chez Scheme in a shell window by typing petite, and (if you chose to install SWL) start SWL from a shell window by typing swl.

Run 'make uninstall' to see uninstallation instructions (this will not actually do the uninstallation) for Chez Scheme or Petite Chez Scheme.

To uninstall SWL, remove /usr/bin/swl and /usr/lib/swl1.3.