Scheme Now!

Scheme Now!

Scheme Now! (also known as Snow) is a Free initiative to produce a portable API for the production of portable modular Scheme code.

Though Scheme has well defined semantics, it does not explain how modules should or could be written, and thus, many different implementations use different module or package systems. However, programs and libraries written with an implementation-specific system are often not portable.

Scheme Now! (a.k.a Snow) attempts to solve this issue by defining an API that allows the writing of portable packages that can then be run on top of virtually any Scheme implementation that supports (or is supported by) Snow.

It is possible to use snow in most R4RS-compatible Scheme systems. and this eases the task for the programmer to port his/her software.

As of August 2007, the Snow framework supports a dozen host Schemes, including Chicken, Gambit, Gauche, GNU Guile, Scheme 48 and MzScheme.


The Snow framework is basically a web site (Snowfort) that hosts packages (programs and libraries) written in Scheme following a precise API. A user can fetch and install automatically such software by using the "snow" command line tool, as well as upload his own pieces of code. Packages can provide a certificate to guarantee their authenticity.

A package can consist either of pure portable code, written according to the R4RS specification, or make use of some implementation specific code. However, though not compulsory, it is suggested that the given code can run on various Scheme hosts, and therefore, the developer might have to write implementation specific code for at least two different Scheme dialects. This is encouraged so that as many Schemes as possible can share a common interface to low-level operations that are not normally available in portable Scheme.

Depending on the chosen host Scheme implementation, it is possible to interpret and/or to compile snow packages and programs.

External links

* [ Snow's Home Page]

Wikimedia Foundation. 2010.