Gambit (scheme implementation)

From HandWiki
Gambit
ParadigmsMulti-paradigm: functional, imperative, meta
FamilyLisp
Designed byMarc Feeley
First appeared1988; 36 years ago (1988)
Stable release
4.9.3 / 5 February 2019; 5 years ago (2019-02-05)[1]
Typing disciplineDynamic, latent, strong
ScopeLexical
PlatformIA-32, x86-64
OSCross-platform
LicenseLGPL 2.1, Apache 2.0
Influenced by
Lisp, Scheme
Influenced
Gerbil Scheme, Termite Scheme

Gambit, also called Gambit-C, is a programming language, a variant of the language family Lisp, and its variants named Scheme. The Gambit implementation consists of a Scheme interpreter, and a compiler which compiles Scheme into the language C, which makes it cross-platform software. It conforms to the standards R4RS, R5RS, and Institute of Electrical and Electronics Engineers (IEEE), and to several Scheme Requests for Implementations (SRFIs).[2] Gambit was released first in 1988, and Gambit-C (Gambit with a C backend) was released first in 1994. They are free and open-source software released under a GNU Lesser General Public License (LGPL) 2.1, and Apache License 2.0.

By compiling to an intermediate representation, in this case portable C (as do Chicken and Bigloo), programs written in Gambit can be compiled for common popular operating systems such as Linux, macOS, other Unix-like systems, and Windows.

Gerbil Scheme

Gerbil scheme is a variant of Scheme implemented on Gambit-C. It supports current R*RS standards and common SRFIs and has a state of the art macro and module system inspired by Racket language.[3]

Termite Scheme

Termite Scheme is a variant of Scheme implemented on Gambit-C. Termite is intended for distributed computing,[4] it offers a simple and powerful message passing model of concurrency, inspired by that of Erlang.

C++ and Objective-C integration

While the Gambit compiler produces C code only, it has full integration support for C++ and Objective-C compilers such as GNU Compiler Collection (GCC). Thus, software written in Gambit-C can contain C++ or Objective-C code, and can fully integrate with corresponding libraries.

See also

References

  1. "Releases – gambit/gambit". 2019-02-05. https://github.com/gambit/gambit/releases. 
  2. "Documentation". Gambit wiki. http://dynamo.iro.umontreal.ca/~gambit/wiki/index.php/Documentation. 
  3. Dimitris Vyzovitis (2017-12-11). Lightning Talk: Gerbil on Gambit, as they say Racket on Chez. Oxford, England: YouTube. Retrieved 2019-03-08.
  4. Germain, Guillaume; Monnier, Stefan; Feeley, Marc (2006-09-17). "Concurrency oriented programming in Termite Scheme" (PDF). Scheme and Functional Programming 2006. Scheme and Functional Programming 2006. Portland, Oregon. http://www.schemeworkshop.org/2006/09-germain.pdf. Retrieved 2019-03-08. 

External links