README 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. This is version 1.4 of Guile, Project GNU's extension language
  2. library. Guile is an interpreter for Scheme, packaged as a library
  3. that you can link into your applications to give them their own
  4. scripting language. Guile will eventually support other languages as
  5. well, giving users of Guile-based applications a choice of languages.
  6. Please send bug reports to bug-guile@gnu.org.
  7. Guile Documentation ==================================================
  8. The doc directory contains a few articles on specific topics and some
  9. examples, including data-rep.texi which describes the internal
  10. representation of data types in Guile. The example-smob directory
  11. contains example source code for the "Defining New Types (Smobs)" chapter.
  12. The incomplete Guile reference manual is available at
  13. ftp://ftp.red-bean.com/pub/guile/snapshots/guile-doc-snap.tar.gz
  14. Neil Jerram is working on the new reference manual, which will be
  15. distributed with guile-core. The new manual will be synchronized with
  16. the docstrings in the sources. Until then, please be aware that the
  17. docstrings are likely to be more up-to-date than the old reference
  18. manual (use `(help)' or see libguile/guile-procedures.txt which is
  19. generated by the build process).
  20. The Guile WWW page is at
  21. http://www.gnu.org/software/guile/guile.html
  22. It contains a link to the Guile FAQ.
  23. Guile License ==================================================
  24. The license of Guile consists of the GNU GPL plus a special statement
  25. giving blanket permission to link with non-free software. This is the
  26. license statement as found in any individual file that it applies to:
  27. This program is free software; you can redistribute it and/or modify
  28. it under the terms of the GNU General Public License as published by
  29. the Free Software Foundation; either version 2, or (at your option)
  30. any later version.
  31. This program is distributed in the hope that it will be useful,
  32. but WITHOUT ANY WARRANTY; without even the implied warranty of
  33. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  34. GNU General Public License for more details.
  35. You should have received a copy of the GNU General Public License
  36. along with this software; see the file COPYING. If not, write to
  37. the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
  38. Boston, MA 02111-1307 USA
  39. As a special exception, the Free Software Foundation gives permission
  40. for additional uses of the text contained in its release of GUILE.
  41. The exception is that, if you link the GUILE library with other files
  42. to produce an executable, this does not by itself cause the
  43. resulting executable to be covered by the GNU General Public License.
  44. Your use of that executable is in no way restricted on account of
  45. linking the GUILE library code into it.
  46. This exception does not however invalidate any other reasons why
  47. the executable file might be covered by the GNU General Public License.
  48. This exception applies only to the code released by the
  49. Free Software Foundation under the name GUILE. If you copy
  50. code from other Free Software Foundation releases into a copy of
  51. GUILE, as the General Public License permits, the exception does
  52. not apply to the code that you add in this way. To avoid misleading
  53. anyone as to the status of such modified files, you must delete
  54. this exception notice from them.
  55. If you write modifications of your own for GUILE, it is your choice
  56. whether to permit this exception to apply to your modifications.
  57. If you do not wish that, delete this exception notice.
  58. About This Distribution ==============================================
  59. Interesting files include:
  60. - INSTALL, which contains instructions on building and installing Guile.
  61. - NEWS, which describes user-visible changes since the last release of Guile.
  62. Files are usually installed according to the prefix specified to
  63. configure, /usr/local by default. Building and installing gives you:
  64. Executables, in ${prefix}/bin:
  65. guile --- a stand-alone interpreter for Guile. With no arguments, this
  66. is a simple interactive Scheme interpreter. It can also be used
  67. as an interpreter for script files; see the NEWS file for details.
  68. guile-config --- a Guile script which provides the information necessary
  69. to link your programs against the Guile library.
  70. guile-snarf --- a script to parse declarations in your C code for
  71. Scheme-visible C functions, Scheme objects to be used by C code,
  72. etc.
  73. Libraries, in ${prefix}/lib. Depending on the platform and options
  74. given to configure, you may get shared libraries in addition
  75. to or instead of these static libraries:
  76. libguile.a --- an object library containing the Guile interpreter,
  77. You can use Guile in your own programs by linking against this.
  78. libqthreads.a --- an object library containing the QuickThreads
  79. primitives. If you enabled thread support when you configured
  80. Guile, you will need to link your code against this too.
  81. libguilereadline.a --- an object library containing glue code for the
  82. GNU readline library. See NEWS for instructions on how to enable
  83. readline for your personal use.
  84. Header files, in ${prefix}/include:
  85. libguile.h, guile/gh.h, libguile/*.h --- for libguile.
  86. guile-readline/readline.h --- for guile-readline.
  87. Support files, in ${prefix}/share/guile/<version>:
  88. ice-9/* --- run-time support for Guile: the module system,
  89. read-eval-print loop, some R4RS code and other infrastructure.
  90. Automake macros, in ${prefix}/share/aclocal:
  91. guile.m4
  92. Documentation in Info format, in ${prefix}/info:
  93. data-rep.info --- an essay on how to write C code that works with
  94. Guile Scheme values.
  95. The Guile source tree is laid out as follows:
  96. libguile:
  97. The Guile Scheme interpreter --- both the object library
  98. for you to link with your programs, and the executable you can run.
  99. ice-9: Guile's module system, initialization code, and other infrastructure.
  100. guile-config:
  101. Source for the guile-config script.
  102. qt: A cooperative threads package from the University of Washington,
  103. which Guile can use. If you configure Guile with the
  104. --with-threads flag, you will need to link against the -lqt
  105. library, found in this directory. Qt is under a separate
  106. copyright; see `qt/README' for more details.
  107. guile-readline:
  108. The glue code for using GNU readline with Guile. This
  109. will be build when configure can find a recent enough readline
  110. library on your system.
  111. doc: Documentation (see above).
  112. Anonymous CVS Access and FTP snapshots ===============================
  113. We make the developers' working Guile sources available via anonymous
  114. CVS, and by nightly snapshots, accessible via FTP. See the files
  115. `ANON-CVS' and `SNAPSHOTS' for details.
  116. If you would like to receive mail when people commit changes to the
  117. Guile CVS repository, you can subscribe to guile-cvs@sourceware.cygnus.com
  118. by sending a message to guile-cvs-subscribe@sourceware.cygnus.com. Even
  119. better, you can get daily digests of these commit messages by sending
  120. a message to guile-cvs-digest-subscribe@sourceware.cygnus.com.
  121. If you want to subscribe an e-mail address other than the one that
  122. appears in your From: header, say foo@bar.com, send a mail note to
  123. guile-cvs-subscribe-foo=bar.com@sourceware.cygnus.com.
  124. Obtaining Guile ======================================================
  125. The latest official Guile release is available via anonymous FTP from
  126. ftp://ftp.gnu.org/pub/gnu/guile/guile-1.4.tar.gz
  127. The mailing list `guile@sourceware.cygnus.com' carries discussions,
  128. questions, and often answers, about Guile. To subscribe, send mail to
  129. guile-subscribe@sourceware.cygnus.com. Of course, please send bug
  130. reports (and fixes!) to bug-guile@gnu.org. Note that one address is
  131. @sourceware.cygnus.com, and the other is at @gnu.org.