2 @c This is part of the GNU Guile Reference Manual.
3 @c Copyright (C) 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2007
4 @c Free Software Foundation, Inc.
5 @c See the file guile.texi for copying conditions.
11 Before the SLIB facilities can be used, the following Scheme expression
15 (use-modules (ice-9 slib))
19 @code{require} can then be used in the usual way (@pxref{Require,,,
20 slib, The SLIB Manual}). For example,
23 (use-modules (ice-9 slib))
29 A few Guile core functions are overridden by the SLIB setups; for
30 example the SLIB version of @code{delete-file} returns a boolean
31 indicating success or failure, whereas the Guile core version throws
32 an error for failure. In general (and as might be expected) when SLIB
33 is loaded it's the SLIB specifications that are followed.
40 @node SLIB installation
41 @subsection SLIB installation
43 The following procedure works, e.g., with SLIB version 3a3
44 (@pxref{Installation, SLIB installation,, slib, The SLIB Portable Scheme
49 Unpack SLIB and install it using @code{make install} from its directory.
50 By default, this will install SLIB in @file{/usr/local/lib/slib/}.
51 Running @code{make installinfo} installs its documentation, by default
52 under @file{/usr/local/info/}.
55 Define the @code{SCHEME_LIBRARY_PATH} environment variable:
58 $ SCHEME_LIBRARY_PATH=/usr/local/lib/slib/
59 $ export SCHEME_LIBRARY_PATH
62 Alternatively, you can create a symlink in the Guile directory to SLIB,
66 ln -s /usr/local/lib/slib /usr/local/share/guile/@value{EFFECTIVE-VERSION}/slib
70 Use Guile to create the catalog file, e.g.,:
74 guile> (use-modules (ice-9 slib))
75 guile> (require 'new-catalog)
79 The catalog data should now be in
80 @file{/usr/local/share/guile/@value{EFFECTIVE-VERSION}/slibcat}.
82 If instead you get an error such as:
85 Unbound variable: scheme-implementation-type
88 then a solution is to get a newer version of Guile,
89 or to modify @file{ice-9/slib.scm} to use @code{define-public} for the
98 @cindex Jaffer, Aubrey
100 @cindex math -- symbolic
101 Jacal is a symbolic math package written in Scheme by Aubrey Jaffer.
102 It is usually installed as an extra package in SLIB.
104 You can use Guile's interface to SLIB to invoke Jacal:
107 (use-modules (ice-9 slib))
113 For complete documentation on Jacal, please read the Jacal manual. If
114 it has been installed on line, you can look at @ref{Top, , Jacal, jacal,
115 JACAL Symbolic Mathematics System}. Otherwise you can find it on the web at
116 @url{http://www-swiss.ai.mit.edu/~jaffer/JACAL.html}
120 @c TeX-master: "guile.texi"