summaryrefslogtreecommitdiff
path: root/lang/gambc/DESCR
diff options
context:
space:
mode:
authorbjs <bjs>2008-04-28 04:14:31 +0000
committerbjs <bjs>2008-04-28 04:14:31 +0000
commitfa1d5096463ce4af50d3f6621aa877f7cdfdd625 (patch)
treeec53ec1dcbb92724405eb6194b06c397e7a236ae /lang/gambc/DESCR
parent39564ecd935effb2e1283ee039a78b110d09f3ad (diff)
downloadpkgsrc-fa1d5096463ce4af50d3f6621aa877f7cdfdd625.tar.gz
Import version 4.2.6 of the Gambit-C Scheme System.
Blurb: Gambit-C includes a Scheme interpreter and a Scheme compiler which can be used to build standalone executables. Because the compiler generates portable C code it is fairly easy to port to any platform with a decent C compiler. The Gambit-C system conforms to the R4RS, R5RS and IEEE Scheme standards. The full numeric tower is implemented, including: infinite precision integers (bignums), rationals, inexact reals (floating point numbers), and complex numbers. Gambit-C supports a number of extensions to the standards including (non-exhaustively): - an optimizing compiler - with several powerful transformations (automatic function inlining, partial evaluation, etc) - that generates properly tail-recursive portable C code - a scalable thread system that can handle millions of concurrent threads - an I/O system fully integrated with the thread system that supports regular files, ttys, sockets (client and server, with TCP or UDP), directories, processes, and pipes - an infix syntax extension (SIX) that allows mixing code in the standard prefix syntax with code in a C-like syntax - SRFIs 0, 4, 6, 8, 9, 18, 21, 22, 23, 27, 39 - a REPL/debugger with - a continuation inspection facility (i.e. "backtrace") - a single-stepping mode - error messages with location of error (file, line, and column number) - emacs compatible line-editing with history - very efficient bignum implementation - a foreign function interface for C - a memory management system that grows and shrinks the heap based on the program's needs - a linker that builds standalone executables and shared libraries - dynamic loading of compiled modules and libraries (supported on many platforms) - Unicode support for characters, strings, I/O and source code - object finalization, pretty printing, keyword objects optional and keyword parameters (with the syntax and semantics of DSSSL) - configurable reader with control over case sensitivity - write/read invariance of symbols, e.g. (string->symbol "B;123") => |B;123| - write/read invariance of floating point numbers - unhygienic macros and more!
Diffstat (limited to 'lang/gambc/DESCR')
-rw-r--r--lang/gambc/DESCR12
1 files changed, 12 insertions, 0 deletions
diff --git a/lang/gambc/DESCR b/lang/gambc/DESCR
new file mode 100644
index 00000000000..5f378d90bbc
--- /dev/null
+++ b/lang/gambc/DESCR
@@ -0,0 +1,12 @@
+This package the Gambit-C Scheme programming system. Gambit-C
+includes a Scheme interpreter and a Scheme compiler which can be used
+to build standalone executables. Because the compiler generates
+portable C code it is fairly easy to port to any platform with a
+decent C compiler.
+
+The Gambit-C system conforms to the R4RS, R5RS and IEEE Scheme standards.
+The full numeric tower is implemented, including: infinite precision
+integers (bignums), rationals, inexact reals (floating point numbers),
+and complex numbers. Gambit-C supports a number of extensions to the
+standards. Please see the <http://gambit.uri.umontreal.ca/~gambit/wiki>
+for more information: there is simply not enough room here to elaborate!