[Top][All Lists]

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

GNU Guile 1.9.4 released (alpha)

From: Ludovic Courtès
Subject: GNU Guile 1.9.4 released (alpha)
Date: Fri, 16 Oct 2009 00:31:30 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)

We are pleased to announce GNU Guile release 1.9.4.  This is the next
pre-release of what will eventually become the 2.0 release series.  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,
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 processing.

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:   (4.4MB)

Here are the GPG detached signatures[*]:

Here are the MD5 and SHA1 checksums:

fc2ae8c7051ef81847fcff2503fc4cb0  guile-1.9.4.tar.gz
6fdaab75d25bba1bcfee92c5cc12f99f6ac90a46  guile-1.9.4.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.4.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.64
  Automake 1.11
  Libtool 2.2.6

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.3 pre-release:

  ** Guile now adds its install prefix to the LTDL_LIBRARY_PATH

  Users may now install Guile to nonstandard prefixes and just run
  `/path/to/bin/guile', instead of also having to set LTDL_LIBRARY_PATH to
  include `/path/to/lib'.

  ** Dynamically loadable extensions may be placed in a Guile-specific path

  Before, Guile only searched the system library paths for extensions
  (e.g. /usr/lib), which meant that the names of Guile extensions had to
  be globally unique. Installing them to a Guile-specific extensions
  directory is cleaner. Use `pkg-config --variable=extensionsdir
  guile-2.0' to get the location of the extensions directory.

  ** The programmatic `compile' procedure compiles its expression in a
     fresh module, by default

  This should make the results of `compile' more predictable. Users may
  specify a specific module in which to compile via the `#:env' keyword
  argument to `compile' (and `compile-file').

  ** `compile-file' preserves expansion-time side-effects to `current-reader'

  User modules may now modify the `current-reader' fluid at expansion
  time, usually within an eval-when, and those modifications will remain
  in place when compiling subsequent forms in the file.

  See "The Scheme Compiler" in the Guile manual for more details.

  ** Guile's Emacs integration is now more keyboard-friendly

  Backtraces may now be disclosed with the keyboard in addition to the

  ** Compile-time warnings: -Wunbound-variable

  Guile can warn about potentially unbound free variables. Pass the
  -Wunbound-variable on the `guile-tools compile' command line, or add
  `#:warnings '(unbound-variable)' to your `compile' or `compile-file'

  ** Wide character/string support in locale-specific character/string

  The `(ice-9 i18n)' functions (`string-locale<?', etc.) now work
  correctly on wide strings as well. This should finish off the remaining
  Unicode support patches. Please send any Unicode bug reports to

  ** ABI harmonization

  `scm_primitive_load_path' now has the signature it did in 1.8.
  `scm_array_p' does as well, reverting an incompatible change made in
  1.9.3. Finally, Guile now has the same ABI when built with or without
  threads, something that should make Debian users happy.

  ** 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: pgpEdOPGVmhjm.pgp
Description: PGP signature

reply via email to

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