1dd8e71a2c
Summary: By default, ikarus now executes the file $HOME/.ikarusrc (which must be an R6RS script) (if it exists) before startup. Details: There is a default behavior for RC files which can be overriden by command-line options. Default RC files location: 1. If the command-line argument --no-rcfile is set, the set of RC files is empty. 2. Otherwise, if there is at least one --rcfile <filename> command-line argument, the specified files are used as the set of RC files. (--rcfile and --no-rcfile are mutually exclusive) 3. Otherwise, if the environment variable IKARUS_RC_FILES is set, the colon-separated list of files are used as the RC files. 4. Otherwise, if the file $HOME/.ikarusrc exists, only it is used. 5. Otherwise, the set is empty. The startup sequence is now: 1. Setup the library path. 2. Execute all RC files. 3. Set command-line options (e.g., -O2, --debug, etc.). 4. Set command-line-arguments. 5. Proceed with normal operation (start repl, run an r6rs script, compile dependencies, etc.). |
||
---|---|---|
benchmarks | ||
benchmarks.larceny | ||
doc | ||
lab | ||
lib | ||
other-libs | ||
scheme | ||
src | ||
.bzrignore | ||
ACKNOWLEDGMENTS | ||
BUGS | ||
COPYING | ||
DEDICATIONS | ||
GPL-3 | ||
HOWTO-Contribute | ||
Makefile.am | ||
Makefile.in | ||
README | ||
aclocal.m4 | ||
c32 | ||
c64 | ||
compile | ||
config.guess | ||
config.h.in | ||
config.sub | ||
configure | ||
configure.ac | ||
depcomp | ||
install-sh | ||
missing | ||
mkinstalldirs |
README
Ikarus Scheme is an implementation of the Scheme programming language. The preliminary release of Ikarus implements the majority of the features found in the current standard, the Revised 6 report on the algorithmic language Scheme including full R6RS library and script syntax, syntax-case, unicode strings, bytevectors, user-defined record types, exception handling, conditions, and enumerations. Over 80% of the R6RS procedures and keywords are currently implemented and subsequent releases will proceed towards brining Ikarus to full R6RS conformance. The main purpose behind releasing Ikarus early is to give Scheme programmers the opportunity to experiment with the various new features that were newly introduced in R6RS. The most important of such features is the ability to structure large programs into libraries; where each library extends the language through procedural and syntactic abstractions. Many useful libraries can be written using the currently supported set of R6RS features including text processing tools, symbolic logic systems, interpreters and compilers, and many mathematical and scientific packages. It is my hope that this release will encourage the Scheme community to write and to share their most useful R6RS libraries.