[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
GNU Guile 3.0.7 released
GNU Guile 3.0.7 released
Mon, 10 May 2021 10:58:13 +0200
Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
We are humbled to announce GNU Guile release 3.0.7, the latest in the
3.0 stable release series.
This is a fix-up release. Compared to Guile 3.0.6, Guile 3.0.7 fixes a
number of bugs, many of which were introduced in the 3.0 series.
Compared to the previous stable series (2.2.x), Guile 3.0 adds support
for just-in-time native code generation, speeding up all Guile programs.
See the NEWS extract at the end of the mail for full details.
The Guile web page is located at http://gnu.org/software/guile/, and
among other things, it contains a copy of the Guile manual and pointers
to more resources.
Guile is an implementation of the Scheme programming language, packaged
for use in a wide variety of environments. In addition to implementing
the R5RS, R6RS, and R7RS Scheme standards, Guile includes full access to
POSIX system calls, networking support, multiple threads, dynamic
linking, a foreign function call interface, powerful string processing,
and HTTP client and server implementations.
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.
Guile 3.0.7 can be installed in parallel with Guile 2.2.x; see
A more detailed NEWS summary follows these details on how to get the
Here are the compressed sources:
Here are the GPG detached signatures[*]:
Use a mirror for higher download bandwidth:
Here are the SHA256 checksums:
[*] Use a .sig file 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-3.0.7.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 keys.gnupg.net --recv-keys
and rerun the 'gpg --verify' command.
This release was bootstrapped with the following tools:
An extract from NEWS follows.
Changes in 3.0.7 (since 3.0.6)
* New interfaces and functionality
** More O_* POSIX constants are now defined in Scheme
Guile now defines constants such as `O_NOFOLLOW', `O_CLOEXEC',
`O_TMPFILE', and more on platforms that support them. These may be
passed as arguments to procedures such as `open' and `open-fdes'.
* Bug fixes
** Fix bugs introduced in 3.0.6 with Scheme `read` re-write
** Fix deadlock after `primitive-fork' (#41948)
** Fix duplicates handlers for interfaces that use interfaces (#43025)
** Fix compile-psyntax.scm for (language tree-il canonicalize) removal
** Fix prompt compilation bug (#48098)
** Fix R7RS include-library-declarations, cond-expand (#40252)
** Fix --enable-mini-gmp on FreeBSD and other targets
** Fix excessive compile times for vectors >16k elements long
** Fix use of literal tree-il as source language (#45131)
** Fix SRFI-64 test-end to not remove globally-installed test runner
- GNU Guile 3.0.7 released,
Andy Wingo <=