[gambit-list] Gambit-C 4.0 beta 18

Marc Feeley feeley at iro.umontreal.ca
Tue Sep 19 19:29:52 EDT 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Gambit-C 4.0 beta 18 is now available.  The source tarball is here:

    http://www.iro.umontreal.ca/~gambit/gambc-4.0b18.tar.gz

A prebuilt installation for Microsoft Windows is available here:

    http://www.iro.umontreal.ca/~gambit/gambc-4.0b18-win.zip

Just unzip it in C: to get C:\Gambit-C\4.0b18, and then add C:\Gambit- 
C\4.0b18\bin to your path.

Here are the highlights of this release:

   - Speculative inlining has been improved.  This greatly improves  
the performance of compiled code
     when no declarations are given.  The "no declaration" mode  
closely conforms to the R5RS
     semantics, where all global variables including car, +, etc are  
mutable (which is useful for
     debugging).  Check http://www.iro.umontreal.ca/~gambit/ 
bench.html for a comparison with Chicken,
     MzScheme and Scheme48.  It shows that when these systems are put  
in an R5RS conformant mode,
     Gambit is often an order of magnitude faster.  Gambit is also  
quite fast in other situations (when
     predefined procedures are bound to immutable variables, when  
fixnum/flonum specific operations
     are used, and in unsafe mode).

   - The benchmark suite (misc/bench.tgz) has been updated to support  
Bigloo, Chicken, MzScheme and
     Scheme48.  There is a script to easily generate HTML tables  
showing the benchmark results.

   - More predefined procedures are now inlined, including some  
recursive functions on lists: map, for-each,
     assq, and memq.

   - Renaming of fixnum and flonum specific functions to the R6RS  
name (e.g. fx+ replaces ##fixnum.+, and
     fl+ replaces ##flonum.+).  The ##fixnum... and ##flonum...  
versions are still available in this release
     but they will be phased out.  In safe mode, which is the  
default, the fixnum specific functions now
     raise an exception on overflow.  There are now "wrapping"  
versions which do not raise an exception
     on overflow, that is  (fxwrap+ (expt 2 28) (expt 2 28)) =>  
- -536870912 .

   - Added an option to open-tcp-server to listen for connection  
requests on a given network interface
     (the default is to listen on all network interfaces).

   - The polling interval for process ports has been shortened to  
improve promptness.

   - The speed of memory moving operations, such as substring, has  
been improved.

   - Fixed a GC bug with tables and added table-copy .  Fixed a bug  
with char-ready? and peek-char .

Sorry to disappoint, but this release does not include a module  
system.  That's something I'm still working
on and I did not want to delay this release any further.

Marc

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (Darwin)

iD8DBQFFEH1x//V9Zc2T/v4RAtdTAJsFds8HFzpaCLb0C9+kMgeCAO2+KwCeLcQt
2/U7r2tfw2BaX7NKU9rj7ps=
=NI2L
-----END PGP SIGNATURE-----



More information about the Gambit-list mailing list