@node Preface
@chapter Preface
-This reference manual documents Guile, GNU's Ubiquitous Intelligent
-Language for Extensions. It describes how to use Guile in many useful
-and interesting ways.
-
-This is edition @value{MANUAL-EDITION} of the reference manual, and
-corresponds to Guile version @value{VERSION}.
+This manual documents version @value{VERSION} of Guile, GNU's
+Ubiquitous Intelligent Language for Extensions. It describes how to
+use Guile in many useful and interesting ways.
@menu
* Manual Layout::
@node Manual Layout
@section Layout of this Manual
-The manual is divided into five chapters.
+The manual is divided into the following chapters.
@table @strong
@item Chapter 1: Introduction to Guile
and install new versions of Guile, and how to report bugs effectively.
@item Chapter 2: Programming in Scheme
-This part provides an overview over programming in Scheme with Guile.
+This part provides an overview of programming in Scheme with Guile.
It covers how to invoke the @code{guile} program from the command-line
and how to write scripts in Scheme. It also gives an introduction
into the basic ideas of Scheme itself and to the various extensions
distribution, that extend the functionality provided by the Guile
Scheme core.
+@item Chapter 6: GOOPS
+Describes GOOPS, an object oriented extension to Guile that provides
+classes, multiple inheritance and generic functions.
+
@end table
@itemize @bullet
@item
-For some procedures, notably type predicates, we use @dfn{iff} to mean
+For some procedures, notably type predicates, we use ``iff'' to mean
``if and only if''. The construct is usually something like: `Return
@var{val} iff @var{condition}', where @var{val} is usually
``@nicode{#t}'' or ``non-@nicode{#f}''. This typically means that
mechanisms and procedures. In addition, he wrote the documentation
for Guile's SRFI modules and modules associated with the Guile REPL.
+The chapter on GOOPS was written by Christian Lynbech, Mikael
+Djurfeldt and Neil Jerram.
+
@node Guile License
@section The Guile License
+@cindex copying
+@cindex GPL
+@cindex LGPL
+@cindex license
Guile is Free Software. Guile is copyrighted, not public domain, and
there are restrictions on its distribution or redistribution, but
@itemize @bullet
@item
The Guile library (libguile) and supporting files are published under
-the terms of the GNU Lesser General Public License version 2.1. See
-the file @file{COPYING.LIB}.
+the terms of the GNU Lesser General Public License version 3 or later.
+See the files @file{COPYING.LESSER} and @file{COPYING}.
@item
The Guile readline module is published under the terms of the GNU
-General Public License version 2. See the file @file{COPYING}.
+General Public License version 3 or later. See the file @file{COPYING}.
@item
The manual you're now reading is published under the terms of the GNU
that module. Basically such code must be published on Free terms.
Scheme level code written to be run by Guile (but not derived from
-Guile itself) is not resticted in any way, and may be published on any
+Guile itself) is not restricted in any way, and may be published on any
terms. We encourage authors to publish on Free terms.
You must be aware there is no warranty whatsoever for Guile. This is