Project GNU's extension language
See below for details.
We make the current Guile sources available via anonymous CVS.
Please keep in mind that these sources are strictly experimental; they
will usually not be well-tested, and may not even compile. They may
contain interfaces which will change. They will usually not be of
sufficient quality for use by people not comfortable hacking the
innards of Guile.
However, we are providing them anyway for several reasons. We'd
like to encourage people to get involved in developing Guile. People
who need to follow the latest happenings are able to use the bleeding
edge. Patches submitted relative to the sources in CVS are be easier
for us to evaluate and incorperate into guile, since the patch's
original sources will be closer to what the other deveopers are
working with. And it allows us to start testing features earlier.
Since the CVS tree is arranged for the convenience of the
developers, it requires GCC and GNU Make, which together support
automatic dependency management.
Visit Guile CVS
to check out a CVS working directory.
The following modules are available for checkout:
- Compilation of Scheme to shared object libraries, based on Hobbit
- The scheme interpreter itself, including documentation
- JIT compilation of Scheme, based on
- The CTAX interpreter
- Bourne shell maintenance scripts
- An incomplete port of SCSH 0.4.4 to Guile
- A statistical profiler (yes, this cvs module name is inconsistent
with the others, that is not a bug)
- Byte-compiler and associated virtual machine for Scheme
- Scheme modules for easy WWW programming (URL, CGI, HTTP)
- Convenient combination ("ampersand module" in CVS terminology)
of the guile/guile-core,
organized primarily for maintainers (this arrangement supports
easy branching of the core and exposes methodology and work-in-progress
for public review)
There are also some additional modules that are mostly of
Once you have a working directory, you can bring it up to date easily
- Go to the top directory of the source tree. That is, your current
directory should be the one containing `configure.in', `README',
and so on.
- Do the update:
$ cvs update
This will incorporate any changes the developers have made to Guile
since your last update into your source tree.
If you would like to receive mail when people commit changes to the
Guile CVS repository, you can subscribe to email@example.com
guile-cvs list page.
(I don't know if they'll be "frequently asked" or not yet!)
- Where is ./configure ?
- Files generated by the "auto" tools, including ./configure, are no
longer checked into CVS. To generate ./configure, run the autogen.sh
script in the top-level directory. See the file guile-core/HACKING for
- It takes forever to do an update; what can I do to speed it up?
- CVS tries to be smart about what it sends; it will transmit and
install only those files that have changed, and will sometimes
transmit and apply patches instead, to save transmission time.
However, if that's still too slow, it is also possible to have
CVS compress transmitted data. Put the following line in your
cvs -z 9
See the CVS documentation for more details.
- What happens if I've changed files in my working directory, and then
I do an update?
- If you have made local changes to your sources, the `cvs update'
command will not overwrite them; instead, CVS will try to merge
its changes with your changes, as if you had applied a patch.
Rejects are marked in the sources.
Last modified: Wed Apr 3 15:29:34 PST 2002
Please send FSF & GNU inquiries & questions to
There are also other ways to
contact the FSF.
Please send comments on these web pages to
send other questions to
Copyright (C) 2000,2001,2002,2005 Free Software Foundation, Inc.,
59 Temple Place - Suite 330, Boston, MA 02111, USA
Verbatim copying and distribution of this entire web page is
permitted in any medium, provided this notice is preserved.
$Date: 2005/06/05 00:55:59 $ $Author: kryde $