| 1 | This is not a Guile release; it is a source tree retrieved via |
| 2 | anonymous CVS or as a nightly snapshot at some random time after the |
| 3 | Guile 1.3.4 release. |
| 4 | |
| 5 | This is version 1.3.5 of Guile, Project GNU's extension language |
| 6 | library. Guile is an interpreter for Scheme, packaged as a library |
| 7 | that you can link into your applications to give them their own |
| 8 | scripting language. Guile will eventually support other languages as |
| 9 | well, giving users of Guile-based applications a choice of languages. |
| 10 | |
| 11 | Please send bug reports to bug-guile@gnu.org. |
| 12 | |
| 13 | Guile Documentation ================================================== |
| 14 | |
| 15 | There is some preliminary documentation for Guile under the directory |
| 16 | doc. The real Guile manual is incomplete, and is currently being |
| 17 | revised. A development snapshot of the manual is available at |
| 18 | ftp.red-bean.com as /pub/guile/snapshots/guile-doc-snap.tar.gz. |
| 19 | |
| 20 | |
| 21 | About This Distribution ============================================== |
| 22 | |
| 23 | Interesting files include: |
| 24 | - INSTALL, which contains instructions on building and installing Guile. |
| 25 | - NEWS, which describes user-visible changes since the last release of Guile. |
| 26 | - COPYING, which describes the terms under which you may redistribute |
| 27 | Guile, and explains that there is no warranty. |
| 28 | |
| 29 | Building and installing this distribution gives you: |
| 30 | guile --- a stand-alone interpreter for Guile, usually installed in |
| 31 | /usr/local/bin. With no arguments, this is a simple |
| 32 | interactive Scheme interpreter. It can also be used as an |
| 33 | interpreter for script files; see the NEWS file for details. |
| 34 | guile-config --- a Guile script which provides the information necessary |
| 35 | to link your programs against the Guile library. |
| 36 | guile-snarf --- a script to parse declarations in your C code for |
| 37 | Scheme-visible C functions, Scheme objects to be used by C code, etc. |
| 38 | libguile.a --- an object library containing the Guile interpreter, |
| 39 | usually installed in /usr/local/lib. You can use Guile in |
| 40 | your own programs by linking against this. |
| 41 | libqthreads.a --- an object library containing the QuickThreads |
| 42 | primitives. If you enabled thread support when you configured |
| 43 | Guile, you will need to link your code against this too. |
| 44 | libguilereadline.a --- an object library containing glue code for the |
| 45 | GNU readline library. See NEWS for instructions on how to enable |
| 46 | readline for your personal use. |
| 47 | <libguile.h>, <guile/gh.h>, <libguile/*.h> --- header files for |
| 48 | libguile.a, usually installed in /usr/local/include. |
| 49 | ice-9, ice-9/*.scm --- run-time support for Guile: the module |
| 50 | system, read-eval-print loop, some R4RS code and other |
| 51 | infrastructure. Usually installed in |
| 52 | /usr/local/share/guile/<version>. |
| 53 | data-rep.info --- An essay on how to write C code that works with |
| 54 | Guile Scheme values. |
| 55 | |
| 56 | The Guile source tree is laid out as follows: |
| 57 | |
| 58 | libguile: |
| 59 | The Guile Scheme interpreter --- both the object library |
| 60 | for you to link with your programs, and the executable you can run. |
| 61 | ice-9: Guile's module system, initialization code, and other infrastructure. |
| 62 | guile-config: |
| 63 | Source for the guile-config script. |
| 64 | qt: A cooperative threads package from the University of Washington, |
| 65 | which Guile can use. If you configure Guile with the |
| 66 | --with-threads flag, you will need to link against the -lqt |
| 67 | library, found in this directory. Qt is under a separate |
| 68 | copyright; see `qt/README' for more details. |
| 69 | guile-readline: |
| 70 | The glue code for using GNU readline with Guile. This |
| 71 | will be build when configure can find a recent enough readline |
| 72 | library on your system. |
| 73 | doc: Some preliminary documentation for Guile. The real Guile |
| 74 | manual is incomplete, and is currently being revised. |
| 75 | A development snapshot of the manual is available at |
| 76 | ftp.red-bean.com as /pub/guile/snapshots/guile-doc-snap.tar.gz. |
| 77 | doc/example-smob: Sample code, discussed in the preliminary |
| 78 | documentation above, for a program that extends Guile with a |
| 79 | new data type, and functions that operate on it. |
| 80 | |
| 81 | |
| 82 | Anonymous CVS Access and FTP snapshots =============================== |
| 83 | |
| 84 | We make the developers' working Guile sources available via anonymous |
| 85 | CVS, and by nightly snapshots, accessible via FTP. See the files |
| 86 | `ANON-CVS' and `SNAPSHOTS' for details. |
| 87 | |
| 88 | If you would like to receive mail when people commit changes to the |
| 89 | Guile CVS repository, you can subscribe to guile-cvs@sourceware.cygnus.com |
| 90 | by sending a message to guile-cvs-subscribe@sourceware.cygnus.com. Even |
| 91 | better, you can get daily digests of these commit messages by sending |
| 92 | a message to guile-cvs-digest-subscribe@sourceware.cygnus.com. |
| 93 | |
| 94 | If you want to subscribe an e-mail address other than the one that |
| 95 | appears in your From: header, say foo@bar.com, send a mail note to |
| 96 | guile-cvs-subscribe-foo=bar.com@sourceware.cygnus.com. |
| 97 | |
| 98 | |
| 99 | Obtaining Guile ====================================================== |
| 100 | |
| 101 | The latest official Guile release is available via anonymous FTP from |
| 102 | ftp.gnu.org, as /pub/gnu/guile/guile-1.3.4.tar.gz. |
| 103 | |
| 104 | Via the web, that's: ftp://ftp.gnu.org/pub/gnu/guile/guile-1.3.4.tar.gz |
| 105 | For getit, that's: ftp.gnu.org:/pub/gnu/guile/guile-1.3.4.tar.gz |
| 106 | |
| 107 | The mailing list `guile@sourceware.cygnus.com' carries discussions, |
| 108 | questions, and often answers, about Guile. To subscribe, send mail to |
| 109 | guile-subscribe@sourceware.cygnus.com. Of course, please send bug |
| 110 | reports (and fixes!) to bug-guile@gnu.org. Note that one address is |
| 111 | @sourceware.cygnus.com, and the other is at @gnu.org. |