|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | 03-May-2022 | - |
| bench/ | H | 05-Feb-2019 | - | 183,281 | 177,849 |
| bin/ | H | 05-Feb-2019 | - | 1,778 | 1,320 |
| contrib/ | H | 05-Feb-2019 | - | 19,228 | 15,282 |
| doc/ | H | 05-Feb-2019 | - | 49,573 | 40,734 |
| examples/ | H | 05-Feb-2019 | - | 11,341 | 8,167 |
| githooks/ | H | 05-Feb-2019 | - | 254 | 158 |
| gsc/ | H | 03-May-2022 | - | 640,929 | 623,041 |
| gsi/ | H | 03-May-2022 | - | 33,449 | 33,154 |
| include/ | H | 05-Feb-2019 | - | 12,760 | 11,036 |
| lib/ | H | 03-May-2022 | - | 650,475 | 610,164 |
| misc/ | H | 03-May-2022 | - | 11,982 | 10,723 |
| prebuilt/ | H | 05-Feb-2019 | - | 3,469 | 2,689 |
| tests/ | H | 05-Feb-2019 | - | 82,953 | 76,769 |
| .gitattributes | H A D | 05-Feb-2019 | 249 | 18 | 17 |
| .gitignore | H A D | 05-Feb-2019 | 3.2 KiB | 194 | 191 |
| .travis.yml | H A D | 05-Feb-2019 | 807 | 23 | 16 |
| README | H A D | 05-Feb-2019 | 3.6 KiB | 93 | 80 |
| README.md | H A D | 05-Feb-2019 | 1.2 KiB | 29 | 20 |
| appveyor.yml | H A D | 05-Feb-2019 | 3.3 KiB | 112 | 82 |
| config.guess | H A D | 05-Feb-2019 | 44.7 KiB | 1,569 | 1,356 |
| config.sub | H A D | 05-Feb-2019 | 34.8 KiB | 1,794 | 1,656 |
| configure | H A D | 05-Feb-2019 | 432.4 KiB | 16,318 | 13,023 |
| configure.ac | H A D | 05-Feb-2019 | 105.7 KiB | 3,259 | 2,577 |
| gsc-boot.bat.windows | H A D | 05-Feb-2019 | 765 | 18 | 13 |
| gsc-boot.unix | H A D | 05-Feb-2019 | 744 | 18 | 1 |
| install-sh | H A D | 05-Feb-2019 | 4.7 KiB | 239 | 152 |
| makefile.in | H A D | 03-May-2022 | 17.3 KiB | 571 | 429 |
| mkidirs | H A D | 05-Feb-2019 | 4.4 KiB | 184 | 134 |
| relpath | H A D | 05-Feb-2019 | 1 KiB | 31 | 21 |
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