Scsh is an open-source Unix shell embedded within Scheme,
running on all major Unix platforms including AIX, Cygwin,
Linux, FreeBSD, GNU Hurd, HP-UX, Irix, Mac OS X, Solaris, and some others.
Scsh is a variant of Scheme 48 (an R5RS compliant new-tech Scheme system) Scsh is designed for writing real-life standalone Unix programs and shell scripts.
Scsh spans a wide range of application, from “script” applications usually handled with perl or sh,
to more standard systems applications usually written in C.
Scsh has two main components: a process notation for running programs
and setting up pipelines and redirections, and a complete syscall library for
low-level access to the operating system, i.e. to
POSIX, the least common
denominator of more or less all Unices, plus widely supported extensions
such as symbolic links and BSD sockets.
Moreover, scsh provides an awk
facility for pattern-directed computation over streams of records, a rich
facility for matching regular-expression patterns in strings, event-based
interrupt handling, user-level threads, a futuristic module system, and an
interactive environment. Scsh comes with extensive documentation describing these and other
The latest version of scsh is 0.6.7, released May 16, 2006. You
may download this or previous versions of scsh.
search this site for scsh
distributions, scsh documentation, scsh programs, background information
and memorabilia. Comments and contributions are welcome.