GNU Info

Info Node: (guile-tut.info)History of Guile and its motivations

(guile-tut.info)History of Guile and its motivations


Next: How to characterize Guile Prev: What are scripting and extension languages Up: Introduction
Enter node , (file) or (file)node

History of Guile and its motivations
====================================

  A few separate threads of events led to the development of Guile.

  In the fall of 1994, Richard Stallman, director of the GNU project,
posted an article with the subject "Why you should not use Tcl", in
which he argued that Tcl is inadequate as an extension language.  This
generated a flurry of flames (available in the hypermail archive
(<http://www.utdallas.edu/acc/glv/Tcl/war/>) *The Tcl War*).

  The result was that Stallman then proposed his design for the GNU
Extension Language, first called GEL and then renamed Guile.  The
discussion triggered by that article is also available in a hypermail
archive, <http://www.utdallas.edu/acc/glv/Tcl/war2/>.

  One interesting feature of this GNU Extension Language plan was that
users should have a _choice_ of languages to use in extending their
program.  The basic language would be a slightly modified Scheme, and
translators would be written to convert other languages (like Tcl,
Python, Perl, C-like languages ...) into Scheme.

  Tom Lord started working on this project immediately, taking Aubrey
Jaffer's small and portable implementation of Scheme, SCM, and making it
into an embeddable interpreter: callable from C and allowing new Scheme
procedures to be written in C.

  In the spring of 1995, the guile-ii snapshot was released.  This made
it possible to start writing code in C and Scheme using the guile
facilities.

  The guile-iii snapshot was released the summer of 1995, and it had
fixed enough problems so that the access to Scheme data structures from
C was almost complete.

  After this, Cygnus Support added many features to Guile and finished
implementing others, so that Guile acquired thread support, a regular
expression matcher, a Tk interface, an interface to the SGI OpenGL
graphics system, an _applet_ formalism, and some other packages.  This
was all in the Cygnus Guile r0.3 and r0.4 releases.

  Meanwhile, Tom Lord left the project after having produced a divergent
version of Guile: 1.0b2.  The Free Software Foundation hired Jim Blandy
to coordinate Guile development.  The FSF released its first version of
Guile in January 1997.  In the future, many of the Cygnus packages will
be re-integrated into Guile.


automatically generated by info2www version 1.2.2.9