• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

bench/H05-Feb-2019-183,281177,849

bin/H05-Feb-2019-1,7781,320

contrib/H05-Feb-2019-19,22815,282

doc/H05-Feb-2019-49,57340,734

examples/H05-Feb-2019-11,3418,167

githooks/H05-Feb-2019-254158

gsc/H03-May-2022-640,929623,041

gsi/H03-May-2022-33,44933,154

include/H05-Feb-2019-12,76011,036

lib/H03-May-2022-650,475610,164

misc/H03-May-2022-11,98210,723

prebuilt/H05-Feb-2019-3,4692,689

tests/H05-Feb-2019-82,95376,769

.gitattributesH A D05-Feb-2019249 1817

.gitignoreH A D05-Feb-20193.2 KiB194191

.travis.ymlH A D05-Feb-2019807 2316

READMEH A D05-Feb-20193.6 KiB9380

README.mdH A D05-Feb-20191.2 KiB2920

appveyor.ymlH A D05-Feb-20193.3 KiB11282

config.guessH A D05-Feb-201944.7 KiB1,5691,356

config.subH A D05-Feb-201934.8 KiB1,7941,656

configureH A D05-Feb-2019432.4 KiB16,31813,023

configure.acH A D05-Feb-2019105.7 KiB3,2592,577

gsc-boot.bat.windowsH A D05-Feb-2019765 1813

gsc-boot.unixH A D05-Feb-2019744 181

install-shH A D05-Feb-20194.7 KiB239152

makefile.inH A D03-May-202217.3 KiB571429

mkidirsH A D05-Feb-20194.4 KiB184134

relpathH A D05-Feb-20191 KiB3121

README

1                      README file for Gambit
2                      ======================
3
4Quick-install instructions for a typical installation
5-----------------------------------------------------
6
7    git clone https://github.com/gambit/gambit.git
8    cd gambit
9    ./configure
10    make -j8
11    make check
12    make doc
13    sudo make install
14
15Detailed installation instructions are given in the file "INSTALL.txt".
16
17
18General information
19-------------------
20
21Gambit includes a Scheme interpreter and a Scheme compiler which can
22be used to build standalone executables.  Because the compiler
23generates portable C code it is fairly easy to port to any platform
24with a decent C compiler.
25
26The Gambit system conforms to the R4RS, R5RS and IEEE Scheme standards.
27The full numeric tower is implemented, including: infinite precision
28integers (bignums), rationals, inexact reals (floating point numbers),
29and complex numbers.  Gambit supports a number of extensions to the
30standards including:
31
32 - an optimizing compiler
33   - with several powerful transformations (automatic function inlining,
34     speculative inlining of primitives, partial evaluation, etc)
35   - that generates properly tail-recursive portable C code
36 - a scalable thread system that can handle millions of concurrent threads
37 - an I/O system fully integrated with the thread system that supports
38   - regular files
39   - ttys (terminals and serial ports)
40   - sockets (client and server, with TCP or UDP)
41   - directories
42   - processes
43   - pipes
44 - an infix syntax extension (SIX) that allows mixing code in the
45   standard prefix syntax with code in a C-like syntax
46 - the following SRFIs:
47    - SRFI 0 (Feature-based conditional expansion construct)
48    - SRFI 4 (Homogeneous numeric vector datatypes)
49    - SRFI 6 (Basic String Ports)
50    - SRFI 8 (RECEIVE: Binding to multiple values)
51    - SRFI 9 (Defining Record Types)
52    - SRFI 18 (Multithreading support)
53    - SRFI 21 (Real-time multithreading support)
54    - SRFI 22 (Running Scheme Scripts on Unix)
55    - SRFI 23 (Error reporting mechanism)
56    - SRFI 27 (Sources of Random Bits)
57    - SRFI 39 (Parameter objects)
58 - a REPL/debugger with
59    - a continuation inspection facility (i.e. "backtrace")
60    - a single-stepping mode
61    - error messages with location of error (file, line, and column number)
62    - emacs compatible line-editing with history
63 - very efficient bignum implementation
64 - a foreign function interface for C
65 - a memory management system that grows and shrinks the heap based on
66   the program's needs
67 - a linker that builds standalone executables and shared libraries
68 - dynamic loading of compiled modules and libraries (supported on many
69   platforms)
70 - Unicode support for characters, strings, I/O and source code
71 - object finalization
72 - pretty printing
73 - keyword objects
74 - optional and keyword parameters (with the syntax and semantics of DSSSL)
75 - configurable reader with control over case sensitivity
76 - write/read invariance of symbols, e.g. (string->symbol "B;123") => |B;123|
77 - write/read invariance of floating point numbers
78 - unhygienic macros
79 - and many other things!
80
81The user manual for the Gambit system is available in PDF format
82(the file "doc/gambit.pdf"), in HTML format (the file
83"doc/gambit.html"), in text format (the file "doc/gambit.txt") and
84in "info" format (the files "doc/gambit.info*").
85
86The Gambit mailing list (gambit-list@iro.umontreal.ca) is a good
87place to ask questions about Gambit.
88
89The latest official release of the system and other helpful documents
90related to Gambit can be obtained from the Gambit wiki at:
91
92  http://gambitscheme.org
93

README.md

1|Linux and OS X|Windows|
2|:--:|:--:|
3|[![Build Status: Linux and OS X](https://travis-ci.org/gambit/gambit.svg?branch=master)](https://travis-ci.org/gambit/gambit)|[![Build Status: Windows](https://ci.appveyor.com/api/projects/status/github/gambit/gambit?branch=master&svg=true)](https://ci.appveyor.com/project/feeley/gambit/branch/master)|
4
5[![Join the chat at https://gitter.im/gambit/gambit](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/gambit/gambit?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
6[![tip for next commit](http://prime4commit.com/projects/121.svg)](http://prime4commit.com/projects/121)
7
8The Gambit Scheme system is a complete, portable, efficient and
9reliable implementation of the Scheme programming language.
10
11The latest official release of the system and other helpful documents
12related to Gambit can be obtained from the Gambit wiki at:
13
14  http://gambitscheme.org
15
16
17Quick-install instructions for a typical installation
18=====================================================
19
20    git clone https://github.com/gambit/gambit.git
21    cd gambit
22    ./configure
23    make -j8
24    make check
25    make doc
26    sudo make install
27
28Detailed installation instructions are given in the file "INSTALL.txt".
29