[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GNU Guile 1.9.14 released (beta)

From: Ludovic Courtès
Subject: GNU Guile 1.9.14 released (beta)
Date: Fri, 17 Dec 2010 22:23:48 +0100
User-agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.2 (gnu/linux)

We are pleased to announce GNU Guile release 1.9.14.  This may be the
last pre-release before the 2.0 release.

It provides many new noteworthy features, most notably the addition of a
compiler and virtual machine.  We encourage you to test them and provide
feedback to address@hidden'.

The Guile web page is located at, and
among other things, it contains a link to the Guile FAQ and pointers to
the mailing lists.

Guile is an implementation of the Scheme programming language, with
support for many SRFIs, packaged for use in a wide variety of
environments.  In addition to implementing the R5RS Scheme standard and
a large subset of R6RS, Guile includes a module system, full access to
POSIX system calls, networking support, multiple threads, dynamic
linking, a foreign function call interface, and powerful string

Guile can run interactively, as a script interpreter, and as a Scheme
compiler to VM bytecode.  It is also packaged as a library so that
applications can easily incorporate a complete Scheme interpreter/VM.
An application can use Guile as an extension language, a clean and
powerful configuration language, or as multi-purpose "glue" to connect
primitives provided by the application.  It is easy to call Scheme code
From C code and vice versa.  Applications can add new functions, data
types, control structures, and even syntax to Guile, to create a
domain-specific language tailored to the task at hand.

Here are the compressed sources:   (5.3MB)

Here are the GPG detached signatures[*]:

To reduce load on the main server, use a mirror listed at:

Here are the MD5 and SHA1 checksums:

40667f40527ff0ecadb23f33e9562d2c  guile-1.9.14.tar.gz
7cb61502642e7ab2ed7ab87262424678a710827d  guile-1.9.14.tar.gz

[*] You can use either of the above signature files to verify that
the corresponding file (without the .sig suffix) is intact.  First,
be sure to download both the .sig file and the corresponding tarball.
Then, run a command like this:

  gpg --verify guile-1.9.14.tar.gz.sig

If that command fails because you don't have the required public key,
then run this command to import it:

  gpg --keyserver --recv-keys EA52ECF4

and rerun the `gpg --verify' command.

This release was bootstrapped with the following tools:
  Autoconf 2.68
  Automake 1.11.1
  Libtool 2.4
  Gnulib v0.0-4496-g6491120

This is a new release series with many new features and differences
compared to 1.8.  The complete list of changes compared to the 1.8.x
series is available in the `NEWS' file.

Changes since the 1.9.13 pre-release:

  ** New module: `(ice-9 futures)'.

  See "Futures" in the manual, for more information.

  ** Add bindings to GNU `sched_setaffinity' and `sched_getaffinity'.

  See "Processes" in the manual, for more information.

  ** New module `(srfi srfi-38)',
     External Representation for Data With Shared Structure

  See "SRFI-38" in the manual, for more information.  Thanks to Andreas

  ** New module: `(web uri)', URI data type, parser, and unparser
  ** New module: `(web http)', HTTP header parsers and unparsers
  ** New module: `(web request)', HTTP request data type, reader, and writer
  ** New module: `(web response)', HTTP response data type, reader, and writer
  ** New module: `(web server)', Generic HTTP server
  ** New module: `(ice-9 poll)', a poll wrapper
  ** New module: `(web server http)', HTTP-over-TCP web server implementation

  See "Web" in the manual, for more information, but as a taste of things,
  try the following command line:

    meta/guile examples/web/debug-sxml.scm

  Then visit http://localhost:8080/ in your web browser.  Let us know how
  it goes!

  ** Better Emacs Lisp implementation

  Brian Templeton's Summer-of-Code work was finally merged in, which
  should improve the state of Guile's Elisp support.  There is still some
  work to do, so patches are welcome!

  ** R6RS fixes

  There were many fixes and enhancements to the R6RS support.  Thanks to
  Julian Graham, Andreas Rottmann, and Göran Weinholt.

  ** Expression-oriented readline history

  Guile's readline history now tries to operate on expressions instead of
  input lines.  Let us know what you think!

  ** Better syntax errors

  The Scheme expander, Ecmascript compiler, and other language
  implementations now produce more useful syntax errors.  The default
  error handlers print them out more nicely now.

  ** Lots of documentation updates

  In particular, the documentation for GOOPS and regular expressions has
  seen some work.  Unfortunately the code has come too fast and furious
  for full documentary folios, so some of the new modules are still

  ** Better pretty-printing

  Indentation recognizes more special forms, like `syntax-case', and read
  macros like `quote' are printed better.

  ** Multicast socket options

  Support was added for the IP_MULTICAST_TTL and IP_MULTICAST_IF socket
  options.  See "Network Sockets and Communication" in the manual, for
  more information.

  ** Deprecate `cuserid'

  `cuserid' has been deprecated, as it only returns 8 bytes of a user's
  login.  Use `(passwd:name (getpwuid (geteuid)))' instead.

  ** New procedure `reload-module', and `,reload' REPL command

  See "Module System Reflection" and "Module Commands" in the manual, for
  more information.

  ** New `,in' REPL command

  See "Module Commands" in the manual, for more information.

  ** Allow user-defined REPL meta-commands

  This feature is not documented yet.  See `define-meta-command' in
  `(system repl command)'.

  ** Add support for unbound fluids

  See `make-unbound-fluid', `fluid-unset!', and `fluid-bound?' in the

  ** Add `variable-unset!'

  See "Variables" in the manual, for more details.

  ** New procedures: `compose', `negate', and `const'

  See "Higher-Order Functions" in the manual, for more information.

  ** Command line additions

  The guile binary now supports a new switch "-x", which can be used to
  extend the list of filename extensions tried when loading files

  ** And of course, the usual collection of bugfixes

  Interested users should see the ChangeLog for more information.

You can follow Guile development in the Git repository and on the Guile
mailing lists.  Guile builds from the `master' branch of Git have
version number 1.9.x.

Guile versions with an odd middle number, e.g., 1.9.*, are unstable
development versions.  Even middle numbers indicate stable versions.
This has been the case since the 1.3.* series.

Please report bugs to address@hidden'.  We also welcome reports of
successful builds, which can be sent to the same email address.

Ludovic Courtès, on behalf of the Guile team.

Attachment: pgpCvQIFPivJo.pgp
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]