           SPELL=gambit-c
         VERSION=4.6.0
          SOURCE="gambc-v${VERSION//./_}.tgz"
   SOURCE_URL[0]=http://www.iro.umontreal.ca/~gambit/download/gambit/v4.6/source/${SOURCE}
     SOURCE_HASH=sha512:f6a157f88f79516c3fe2bf11377c1cdfa040c16fdf4d68ee193bb91a77ea4588da797602d969d876b558eeb19c231387741f6dc3e49f07284ee2d0ff0731a2d1
SOURCE_DIRECTORY="${BUILD_DIRECTORY}/gambc-v${VERSION//./_}"
        WEB_SITE="http://dynamo.iro.umontreal.ca/~gambit/"
      LICENSE[0]=lgpl-2.1
      LICENSE[1]=apache-2.0
         ENTERED=20101214
           SHORT="complete, portable, efficient and reliable implementation of the Scheme programming language"
cat << EOF
Gambit consists of two main programs: gsi, the Gambit Scheme interpreter,
and gsc, the Gambit Scheme compiler.

The interpreter contains the complete execution and debugging environment. The
compiler is the interpreter extended with the capability of generating
executable files. The compiler can produce standalone executables or compiled
modules which can be loaded at run time. Interpreted code and compiled code
can be freely mixed.

Gambit-C is a version of the Gambit programming system in which the compiler
generates portable C code. The main features of Gambit-C are:

 * Conformance: The Gambit-C system conforms to the R4RS, R5RS and IEEE Scheme
   standards and implements all optional features. Tail calls and first class
   continuations conform to the Scheme semantics. The full numeric tower is
   implemented, including: arbitrary precision integers (bignums), rationals,
   inexact reals (floating point numbers), and complex numbers. Several
   extensions to Scheme are provided, including: lightweight threads, a
   foreign-function interface (FFI), and extended I/O capabilities (Unicode,
   networking, subprocesses, ...).

 * Portability: Because the system is mostly written in Scheme and the compiler
   generates portable C code, it is easy to port the system as well as programs
   compiled with it to any platform with a decent C or C++ compiler. There
   is no reliance on a particular C compiler, although the system can
   take advantage of some gcc-specific constructs. The C code generated
   is oblivious to the endianness and word size of the target environment
   (32 and 64 bit architectures are currently supported).

 * Performance: The compiler includes several powerful program transformations
   such as user procedure inlining, partial-evaluation, and
   lambda-lifting. With appropriate declarations in the source code the
   executable programs generated by the compiler run roughly as fast as
   equivalent C programs. Programs containing no declarations are also
   optimized without compromising the Scheme semantics by speculatively
   inlining predefined procedures (see the benchmarks page for a comparison
   with other Scheme implementations and other languages). Thanks to an
   efficient implementation of continuations, the thread system is very
   efficient and can support millions of concurrent threads.

 * Reliability: Stable releases typically have very few bugs. Bug tracking is
   done with bugzilla. Gambit-C has been used to develop large-scale real-world
   software and services in academic and commercial settings.
EOF
