Common-Scheme

Common-Scheme is a portable module system and collection of libraries that works with a number of Scheme implementations.

View Online Manual

Download Common-Scheme 0.3.1


Version 0.3.1 fixes bugs in list and upgrade, keywords for Gauche, adds better error handling and includes documentation for modules inheritance.

Version 0.3 adds the optional "common-scheme" command which acts as a package management system and multi-platform build tool all in one. Search and install from a decentralized peer-to-peer network, or directly from URLs. No package description files or Makefiles needed - everything is inferred directly from the source code itself for easy maintenance. Sharing has never been easier.


Initial support for Gambit has been added, bringing the list of supported implementations to five (along with Chicken, Gauche, Guile and SISC).

Major improvements to the module system have been made, including support for identifier renaming and prefixing, plus module inheritance. Module inheritance is a simple and intuitive system which lets you extend a module overriding only some identifiers, or group several modules into a single name, or provide an abstract module which acts only as an interface.

Extensive test suites have been added, and the documentation updated and extended.


Common-Scheme is non-intrusive. You can use native implementation- specific modules from Common-Scheme code and vice versa. If you don't want to bother with Common-Scheme itself you can still use other people's distributed Common-Scheme modules with no problem using your native module system.

Common-Scheme is in the Public Domain (though modules distributed in the peer-to-peer network may be under any license, of course).

You can subscribe to the mailing list at: https://mail.gna.org/listinfo/scheme-hackers-common-scheme/