algorithm textbooks http://people.csail.mit.edu/jaffer/SLIB

The SLIB Portable Scheme Library

Current Version Released Terms
3b2 2009-08-02 Free

SLIB is a portable library for the programming language Scheme. It provides a platform independent framework for using packages of Scheme procedures and syntax. As distributed, SLIB contains useful packages for all Scheme implementations. Its catalog can be transparently extended to accomodate packages specific to a site, implementation, user, or directory.
SLIB supports Bigloo, Chez, ELK 3.0, Gambit 4.0, Guile, JScheme, Kawa, Larceny, MacScheme, MIT/GNU Scheme, Pocket Scheme, RScheme, scheme->C, Scheme48, SCM, SCM Mac, scsh, sisc, Stk, T3.1, umb-scheme, and VSCM.
Documentation includes a manifest, installation instructions, and coding standards for the library. Each library package is documented.

SLIB, Guile, Kawa, MIT/GNU Scheme, and SCM are GNU packages.


News

From Clemens Fischer
html4each.scm (htm-fields): Value always is string.

From Sarah V. Jaffer
prec.scm: Rewrote to make thread-safe; fluid-let variables replaced with `dyn' argument to most procedures.

From Andrea Girotto
kawa.init (scheme-implementation-version): Update for Kawa-1.9.3.

From Adam Sampson
Makefile (install): Fixed DESTDIR use.

From Aubrey Jaffer
prec.scm (prec:parse): Removed input newline flushing. Added initial-column argument.

html4each.scm (htm-fields): Treat DTDs like comments. Fixed handling of closing tags. Corrected documentation.

qp.scm (qp): Don't add newlines when *qp-width* is #f.
trace.scm (debug:trace-procedure): Increased indent increment to 2; wrap at column 31 so that depths 16 to 31 are offset.

sisc.init (syncase:eval, syncase:load): Added.
In SISC (1.16.6), the second argument to 'record-constructor' is not optional. Second arguments added to calls in SLIB.

mitscheme.init(system): Now called run-shell-command.
(print-call-stack): Added dummy definition for trace.

guile.init (list->array): Redefine to take 3 arguments.
(vector->array, array->vector): Define if missing.
(implementation-vicinity): Thomas Bushnell points out that %site-dir mashes all slibcat for all versions together. %library-dir (since Guile-1.6) is the versioned directory.
(library-vicinity): Last resort changed to "/usr/share/slib/".

More in SLIB_ANNOUNCE.txt.

Quick Start

x86 MS-Windows
Obtain slib-3b2-1.exe (1.1.MB) and run.
GNU/Linux with RPM
Obtain slib-3b2-1.noarch.rpm (590.kB) and install.
Any
Obtain slib-3b2.zip (860.kB), and install.

Documentation

SLIB Development

Volunteer opportunities

Related Software

Miscellany

Copyright © 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2007, 2008, 2009 Aubrey Jaffer

I am a guest and not a member of the MIT Computer Science and Artificial Intelligence Laboratory.  My actions and comments do not reflect in any way on MIT.
agj @ alum.mit.edu
Go Figure!