[Top][All Lists]

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

Guile news for the GNU Status Report

From: Ludovic Courtès
Subject: Guile news for the GNU Status Report
Date: Sat, 08 Jan 2011 16:01:17 +0100
User-agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.2 (gnu/linux)


Karl Berry asked maintainers to submit a few paragraphs for the
forthcoming GNU Status Report, a news bulletin to appear within the next
couple of weeks with updates on what individual GNU packages are up to.

Here’s a proposal.  The goal is to send a final version by Monday, 10th
(sorry for not working on it earlier), and comments/amendments are
welcome!  It's a bit long, but heck, there are so many things to say!

--8<---------------cut here---------------start------------->8--- GNU
Guile is an implementation of the Scheme programming language that can
be embedded in applications to allow users to extend them in Scheme.
Extensibility empowers users to leverage software freedom by making it
easier to start making changes.  Just as Emacs Lisp allowed
unanticipated applications to be written within the Emacs environment,
Guile should do the same for other GNU applications.  It should spread
the Emacs nature to the rest of GNU.

Guile has undergone major changes over the last couple of years,
resulting in 15 pre-releases---labeled 1.9.x.  This will lead to the 2.0
stable series, scheduled for release in the first quarter of 2011.  The
1.8 stable series was released in 2006.  It offered many improvements
such as support for exact rational numbers, multi-threading, and a
better C programming interface.

Guile 2.0 is a breakthrough in Guile's history.  First and foremost, it
is based on a compiler and a virtual machine.  The compiler compiles
Scheme code to bytecode, applying well-known optimizations.  As a
result, Scheme code runs noticeably faster with Guile 2.0.  Compilation
can occur transparently: when the compiled form of a module is not found
in cache, it is automatically compiled before being run.

In addition, Guile 2.0 comes with a wealth of exciting new features.
Hygienic macros are supported natively and well integrated with the
module system; they are what makes Scheme itself extensible.  It
supports Unicode, as well as most of R6RS, the latest revision of the
Scheme programming language.

A dynamic foreign function interface (FFI) is provided, allowing
bindings to C libraries to be written entirely in Scheme.  The new
version also provides composable continuations (aka. ``prompts''), a
novel control flow mechanism.  New modules include web tools for HTTP
and URIs, XML/SXML, pattern matching, LALR parsing,
internationalization, purely functional hash lists, and code coverage,
to name a few.

While Guile 2.0 remains primarily an implementation of Scheme, its
compiler comes with a front-end for ECMAScript---one more choice for
users seeking to extend their applications.  An Emacs Lisp front-end is
also available.  It is the result of work towards the unification of
Guile and Emacs, flagships of extensibility in GNU.

2011 promises to be another exciting year for Guile.  We believe Guile
2.0 is a great tool to push extensibility further and enhance software
--8<---------------cut here---------------end--------------->8---


Attachment: pgp9xOb5hjFz5.pgp
Description: PGP signature

reply via email to

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