[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
2.3 How to characterize Guile
I have already mentioned that Guile has become a kitchen sink package; here you can see how Guile freely takes new commands and constructs from the portable Scheme library slib, the Tk widget set, a posix library (useful for UNIX systems programming), the regular expression library rx, and many more …
So Guile has many more primitive procedures available to it than those specified in Revised(5) Report on the Algorithmic Language Scheme: (r5rs)Standard Procedures section `Standard Procedures' in Revised(5) Report on the Algorithmic Language Scheme. On top of that, Guile will interpret almost all standard Scheme programs. The only incompatible difference between the basic Guile language and R5RS Scheme is that Guile is case sensitive, whereas R5RS is case insensitive. We hope that few people have written Scheme programs that depend on case insensitivity.
Here is a possible view of the sum of the parts in Guile:
guile = standard Scheme (R5RS) PLUS extensions to R5RS offered by SCM PLUS some extra primitives offered by Guile (catch/throw) PLUS portable Scheme library (SLIB) PLUS embeddable Scheme interpreter library (libguile) PLUS Tk toolkit PLUS threads PLUS Posix library PLUS Regular expression library (rx) PLUS Tcl library |