Selects version 2 of the Guile-GNOME libraries. This module is used for its side effects; it exports no procedures.
Early in the development of guile-gnome, we realized that at some point we might need to make incompatible changes. Of course, we would not want to force a correctly-written program to break when guile-gnome gets upgraded. For this reason, we decided to make guile-gnome parallel-installable. A program is completely specified when it indicates which version of guile-gnome it should use.
Guile-gnome has the concept of an API version, which indicates a stable API series. For example, a program written against API version 2 of guile-gnome will continue to work against all future releases of that API version. It is permitted to add interfaces within a stable series, but never to remove or change them incompatibly.
Changing the API version is expected to be a relatively infrequent operation. The current API version is 2.
There are two manners for a program to specify the guile-gnome version:
This special module alters guile's load path to include the path of the specified API version of guile-gnome. For example:
This shell script is installed when building a particular version of
guile-gnome, and serves to automatically load the
) module. For example, to get a repl ready for
To load a script with a particular version of guile-gnome:
$ guile-gnome-2 -s script args...
To specify the guile-gnome version in a script, you might begin the file with:
#! /bin/sh # -*- scheme -*- exec guile-gnome-2 -s $0 !# ;; scheme code here...
A program must select the guile-gnome version before importing any guile-gnome
modules. Indeed, one cannot even import
(gnome gobject) before doing so.
For a further rationale on parallel installability, see http://ometer.com/parallel.html.