We are pleased to announce GNU Guile release 1.9.13. 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 `guile-de...@gnu.org'. The Guile web page is located at http://gnu.org/software/guile/, 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 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: ftp://alpha.gnu.org/gnu/guile/guile-1.9.13.tar.gz (5.1MB) Here are the GPG detached signatures[*]: ftp://alpha.gnu.org/gnu/guile/guile-1.9.13.tar.gz.sig To reduce load on the main server, use a mirror listed at: http://www.gnu.org/order/ftp.html Here are the MD5 and SHA1 checksums: ac10b460d006fd1b7a95286d14f6d4cf guile-1.9.13.tar.gz e8067a26aa2d01a856c0cd5bc73e7e8b4fa6429a guile-1.9.13.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.13.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 EA52ECF4 and rerun the `gpg --verify' command. This release was bootstrapped with the following tools: Autoconf 2.68 Automake 1.11.1 Libtool 2.2.6b Gnulib v0.0-4219-g84cdd8b 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.12 pre-release: ** SRFI support The following SRFIs have been added: - SRFI-27 "Sources of Random Bits" - SRFI-42 "Eager Comprehensions" - SRFI-45 "Primitives for Expressing Iterative Lazy Algorithms" - SRFI-67 "Compare Procedures" Thanks to Andreas Rottmann. ** (system foreign) API changes The `make-foreign-function' procedure was renamed to `pointer->procedure'. ** (system xref) source database The `(system xref)' module can now map from source locations to procedures. See the `source-procedures' and `source-closures' functions. ** New procedures: `scm_to_latin1_stringn', `scm_from_latin1_stringn' Use these procedures when you know you have latin1-encoded or ASCII-encoded strings. ** New procedures: `scm_to_stringn', `scm_from_stringn' Use these procedures if you want to encode or decode from a particular locale. ** Removed support shlibs for SRFIs 1, 4, 13, 14, and 60 Though these SRFI support libraries did expose API, they encoded a strange version string into their library names. That version was never programmatically exported, so there was no way people could use the libs. This was a fortunate oversight, as it allows us to remove the need for extra, needless shared libraries --- the C support code for SRFIs 4, 13, and 14 was already in core --- and allow us to incrementally return the SRFI implementation to Scheme. ** Simplifications to the set of low-level hooks exported by the VM See "VM Hooks" in the manual, for more information. ** New traps system See "Traps" in the manual, for more information. ** Breakpoints, tracepoints and source stepping now available at the REPL See "Interactive Debugging" in the manual, for more information. The new REPL commands are: break, break-at-source, tracepoint, traps, delete, disable, enable, step, step-instruction, next, next-instruction, finish, and registers. ** Remove obsolete debug-options Removed `breakpoints', `trace', `procnames', `indent', `frames', `maxdepth', and `debug' debug-options. ** Remove obsolete print-options The `source' and `closure-hook' print options are obsolete, and have been removed. ** Remove obsolete read-options The "elisp-strings" and "elisp-vectors" read options were unused and obsolete, so they have been removed. ** Remove eval-options and trap-options Eval-options and trap-options are obsolete with the new VM and evaluator. ** Remove (ice-9 debugger) and (ice-9 debugging) See "Traps" and "Interactive Debugging" in the manual, for information on their replacements. ** Remove the GDS Emacs integration See "Using Guile in Emacs" in the manual, for info on how we think you should use Guile with Emacs. ** Remove vm-version, vm options These procedures introduced during the 1.9 series had no effect. ** Add `call-with-vm' and ability to set VM engine `call-with-vm' applies a procedure to arguments in a context in which a given VM is current. `set-vm-engine!' can be used to specify the engine for a VM, which will become current at the next `call-with-vm' invocation. ** Default to "regular" VM engine for noninteractive use The "debug" engine is used when the user specifies --debug, or when running interactively. A debug VM allows hooks to run; see "VM Hooks" in the manual. ** `backtrace' debug option on by default Given that Guile 2.0 can always give you a backtrace, backtraces are now on by default. ** `turn-on-debugging' deprecated ** New compilation warning: `-Wformat' The `-Wformat' warning can indicate a number of common format string errors. See "Compilation" in the manual, for more information. ** Add `(system repl server)' module and `--listen' command-line argument The `(system repl server)' module exposes procedures to listen on sockets for connections, and serve REPLs to those clients. The --listen command-line argument allows any Guile program to thus be remotely debuggable. See "Invoking Guile" for more information on `--listen'. ** Big manual updates The GOOPS documentation got a lot of attention this cycle, as well as the sections on interactive use and debugging. We don't know of any sections of the manual that are out-of-date at this point. ** 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 `bug-gu...@gnu.org'. 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.
pgpA9FqupmvT0.pgp
Description: PGP signature