*** empty log message ***
[bpt/guile.git] / README
diff --git a/README b/README
dissimilarity index 60%
index 6d5f319..c6e00a1 100644 (file)
--- a/README
+++ b/README
-This is a nightly snapshot of Guile, a portable, embeddable Scheme
-implementation written in C.  Guile provides a machine independent
-execution platform that can be linked in as a library when building
-extensible programs.
-
-Please send bug reports to bug-guile@prep.ai.mit.edu.
-
-About Snapshots ======================================================
-
-
-Each night, we make the current Guile sources available via anonymous
-FTP.  Please keep in mind that these sources are strictly
-experimental; they will usually not be well-tested, and may not even
-compile on some systems.  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.  Caveat!
-
-However, we're providing them anyway for several reasons.  We'd like
-to encourage people to get involved in developing Guile.  People
-willing to use the bleeding edge of development can get earlier access
-to new, experimental features.  Patches submitted relative to recent
-snapshots will be easier for us to evaluate and install, since the
-patch's original sources will be closer to what we're working with.
-And it allows us to start testing features earlier.
-
-Nightly snapshots of the Guile development sources are available via
-anonymous FTP from ftp.red-bean.com, as /pub/guile/guile-core-snap.tar.gz.
-
-Via the web, that's:  ftp://ftp.red-bean.com/pub/guile/guile-core-snap.tar.gz
-For getit, that's:    ftp.red-bean.com:/pub/guile/guile-core-snap.tar.gz
-
-The development FTP site is mirrored nightly in Europe at
-ftp://ftp.aec.at/pub/guile.
-
-
-About This Distribution ==============================================
-
-Building and installing this distribution gives you:
-guile --- a stand-alone interpreter for Guile, usually installed in
-       /usr/local/bin.  With no arguments, this is a simple
-       interactive Scheme interpreter.  It can also be used as an
-       interpreter for script files; see the NEWS file for details.
-libguile.a --- an object library containing the Guile interpreter,
-       usually installed in /usr/local/lib.  You can use Guile in
-       your own programs by linking against this.
-libqt.a --- an object library containing the QuickThreads primitives.
-        If you enabled thread support when you configured Guile, you
-        will need to link your code against this too.
-<libguile.h>, <libguile/*.h> --- header files for libguile.a, usually
-       installed in /usr/local/include.
-ice-9, ice-9/*.scm --- run-time support for Guile: the module
-       system, read-eval-print loop, some R4RS code and other
-       infrastructure.  Usually installed in
-       /usr/local/share/guile/<version>.
-
-Interesting files include:
-- INSTALL, which contains instructions on building and installing Guile.
-- NEWS, which describes user-visible changes since the last release of Guile.
-- COPYING, which describes the terms under which you may redistribute
-  Guile, and explains that there is no warranty.
-
-The Guile source tree is laid out as follows:
-
-libguile:
-       The Guile Scheme interpreter --- both the object library
-       for you to link with your programs, and the executable you can run.
-ice-9:  Guile's module system, initialization code, and other infrastructure.
-
-qt:    A cooperative threads package from Washington University,
-       which Guile can use.  If you configure Guile with the
-        --with-threads flag, you will need to link against the -lqt
-        library, found in this directory.  Qt is under a separate
-        copyright; see `qt/README' for more details.
-
-(The present release doesn't include any documentation; the Guile
-manual is incomplete, and is currently being revised.)
-
-
-Hacking It Yourself ==================================================
-
-As distributed, Guile needs only an ANSI C compiler and a Unix system
-to compile.  However, Guile's makefiles, configuration scripts, and a
-few other files are automatically generated, not written by hand.  If
-you want to make changes to the system (which we encourage!) you will
-find it helpful to have the tools we use to develop Guile.  They
-are the following:
-
-Autoconf 2.12 --- a system for automatically generating `configure'
-       scripts from templates which list the non-portable features a
-       program would like to use.  Available in
-       "ftp://prep.ai.mit.edu/pub/gnu".
-
-Automake 1.2c --- a system for automatically generating Makefiles that
-       conform to the (rather Byzantine) GNU coding standards.  The
-       nice thing is that it takes care of hairy targets like 'make
-       dist' and 'make distclean', and automatically generates
-       Makefile dependencies.  Automake is available in
-       "ftp://ftp.cygnus.com/pub/tromey".
-
-       Before using automake, you may need to copy `threads.m4' and
-       `guile.m4' from the top directory of the Guile core disty to
-       `/usr/local/share/aclocal.
-
-libtool 1.0e --- a system for managing the zillion hairy options needed
-       on various systems to produce shared libraries.  Available in
-       "ftp://alpha.gnu.org/gnu".
-
-You are lost in a little maze of automatically generated files, all
-different.
-> 
-
-
-Obtaining Guile ======================================================
-
-The latest official Guile release is available via anonymous FTP from
-prep.ai.mit.edu, as /pub/gnu/guile-1.2.tar.gz.
-
-Via the web, that's:  ftp://prep.ai.mit.edu/pub/gnu/guile-1.2.tar.gz
-For getit, that's:    prep.ai.mit.edu:/pub/gnu/guile-1.2.tar.gz
-
-The mailing list `guile@cygnus.com' carries discussions, questions,
-and often answers, about Guile.  To subscribe, send mail to
-guile-request@cygnus.com.  Of course, please send bug reports (and
-fixes!) to bug-guile@prep.ai.mit.edu.
-
-
-Authors And Contributors =============================================
-
-Many people have generously contributed to Guile.  However, any errors
-are the responsibility of the primary Guile maintainer, Jim Blandy.
-
-Mikael Djurfeldt designed and implemented:
-* the source-level debugging support (although the debugger's user
-  interface is not yet complete)
-* stack overflow detection,
-* the GDB patches to support debugging mixed Scheme/C code,
-* the original implementation of weak hash tables,
-* enhancements to the `threads' interface (based on Anthony Green's
-  work), and
-* detection of circular references during printing.
-
-Mark Galassi contributed the Guile high-level functions (gh_*), and
-wrote the guile-programmer and guile-user manuals.  (These are in the
-process of revision.)
-
-Anthony Green wrote the original version of `threads', the interface
-between Guile and qt.
-
-Gary Houston wrote much of the Unix system call support, including the
-socket support, and did a lot of work on the error handling code.
-
-Tom Lord librarified SCM, yielding Guile.  He wrote Guile's operating
-system, Ice-9, and connected Guile to Tcl/Tk and the `rx' regular
-expression matcher.
-
-Aubrey Jaffer seriously tuned performance and added features.  He
-designed many hairy but beautiful parts of the tag system and
-evaluator.
-
-George Carrette wrote SIOD, a stand-alone scheme interpreter.
-Although most of this code as been rewritten or replaced over time,
-the garbage collector from SIOD is still an important part of Guile.
+This is release 1.3.3 of Guile, Project GNU's extension language
+library.  Guile is an interpreter for Scheme, packaged as a library
+that you can link into your applications to give them their own
+scripting language.  Guile will eventually support other languages as
+well, giving users of Guile-based applications a choice of languages.
+
+Please send bug reports to bug-guile@gnu.org.
+
+About This Distribution ==============================================
+
+Building and installing this distribution gives you:
+guile --- a stand-alone interpreter for Guile, usually installed in
+       /usr/local/bin.  With no arguments, this is a simple
+       interactive Scheme interpreter.  It can also be used as an
+       interpreter for script files; see the NEWS file for details.
+guile-config --- a Guile script which provides the information necessary
+       to link your programs against the Guile library.
+guile-snarf --- a script to parse declarations in your C code for 
+       Scheme-visible C functions, Scheme objects to be used by C code, etc.
+libguile.a --- an object library containing the Guile interpreter,
+       usually installed in /usr/local/lib.  You can use Guile in
+       your own programs by linking against this.
+libqthreads.a --- an object library containing the QuickThreads
+       primitives.  If you enabled thread support when you configured
+       Guile, you will need to link your code against this too.
+<libguile.h>, <guile/gh.h>, <libguile/*.h> --- header files for
+       libguile.a, usually installed in /usr/local/include.
+ice-9, ice-9/*.scm --- run-time support for Guile: the module
+       system, read-eval-print loop, some R4RS code and other
+       infrastructure.  Usually installed in
+       /usr/local/share/guile/<version>.
+data-rep.info --- An essay on how to write C code that works with
+       Guile Scheme values.
+
+Interesting files include:
+- INSTALL, which contains instructions on building and installing Guile.
+- NEWS, which describes user-visible changes since the last release of Guile.
+- COPYING, which describes the terms under which you may redistribute
+  Guile, and explains that there is no warranty.
+
+The Guile source tree is laid out as follows:
+
+libguile:
+       The Guile Scheme interpreter --- both the object library
+       for you to link with your programs, and the executable you can run.
+ice-9:  Guile's module system, initialization code, and other infrastructure.
+guile-config:
+       Source for the guile-config script.
+qt:    A cooperative threads package from the University of Washington,
+       which Guile can use.  If you configure Guile with the
+        --with-threads flag, you will need to link against the -lqt
+        library, found in this directory.  Qt is under a separate
+        copyright; see `qt/README' for more details.
+doc:   Some preliminary documentation for Guile.  The real Guile
+       manual is incomplete, and is currently being revised.
+doc/example-smob: Sample code, discussed in the preliminary
+       documentation above, for a program that extends Guile with a
+       new data type, and functions that operate on it.
+
+
+Anonymous CVS Access and FTP snapshots ===============================
+
+We make the developers' working Guile sources available via anonymous
+CVS, and by nightly snapshots, accessible via FTP.  See the files
+`ANON-CVS' and `SNAPSHOTS' for details.
+
+If you would like to receive mail when people commit changes to the
+Guile CVS repository, you can subscribe to guile-cvs@sourceware.cygnus.com
+by sending a message to guile-cvs-subscribe@sourceware.cygnus.com.  Even
+better, you can get daily digests of these commit messages by sending
+a message to guile-cvs-digest-subscribe@sourceware.cygnus.com.
+
+If you want to subscribe an e-mail address other than the one that
+appears in your From: header, say foo@bar.com, send a mail note to
+guile-cvs-subscribe-foo=bar.com@sourceware.cygnus.com.
+
+
+Hacking It Yourself ==================================================
+
+As distributed, Guile needs only an ANSI C compiler and a Unix system
+to compile.  However, Guile's makefiles, configuration scripts, and a
+few other files are automatically generated, not written by hand.  If
+you want to make changes to the system (which we encourage!) you will
+find it helpful to have the tools we use to develop Guile.  They
+are the following:
+
+Autoconf 2.13 --- a system for automatically generating `configure'
+       scripts from templates which list the non-portable features a
+       program would like to use.  Available in
+       "ftp://ftp.gnu.org/pub/gnu/autoconf"
+
+Automake 1.4 --- a system for automatically generating Makefiles that
+       conform to the (rather Byzantine) GNU coding standards.  The
+       nice thing is that it takes care of hairy targets like 'make
+       dist' and 'make distclean', and automatically generates
+       Makefile dependencies.  Automake is available in
+       "ftp://ftp.gnu.org/pub/gnu/automake"
+
+       Before using automake, you may need to copy `threads.m4' and
+       `guile.m4' from the top directory of the Guile core disty to
+       `/usr/local/share/aclocal.
+
+libtool 1.3.3 --- a system for managing the zillion hairy options needed
+       on various systems to produce shared libraries.  Available in
+       "ftp://ftp.gnu.org/pub/gnu/libtool"
+
+You are lost in a little maze of automatically generated files, all
+different.
+> 
+
+
+Obtaining Guile ======================================================
+
+The latest official Guile release is available via anonymous FTP from
+ftp.gnu.org, as /pub/gnu/guile/guile-1.3.4.tar.gz.
+
+Via the web, that's:  ftp://ftp.gnu.org/pub/gnu/guile/guile-1.3.4.tar.gz
+For getit, that's:    ftp.gnu.org:/pub/gnu/guile/guile-1.3.4.tar.gz
+
+The mailing list `guile@sourceware.cygnus.com' carries discussions,
+questions, and often answers, about Guile.  To subscribe, send mail to
+guile-subscribe@sourceware.cygnus.com.  Of course, please send bug
+reports (and fixes!) to bug-guile@gnu.org.  Note that one address is
+@sourceware.cygnus.com, and the other is at @gnu.org.