runs the script according to the R6RS semantics, then starts a
repl in an interaction environment made of everything visible
(imported and defined) in the script.
Use cases include:
* debugging a script.
* starting ikarus in some predefined environment, e.g.,
$ ikarus --r6rs-repl rnrs.ss
where rnrs.ss contains (import (rnrs))
Also, interaction-environment is made a parameter with an initial
value set prior to entering the repl.
fasl-directory parameter) that works as follows:
- if IKARUS_FASL_DIRECTORY is set to "", no fasl files are produced.
- if IKARUS_FASL_DIRECTORY is set to something other than "", the
string is used as a directory in which fasl files are placed.
- if IKARUS_FASL_DIRECTORY is unset, the directory
$HOME/.ikarus/precompiled is used for fasl output.
- library file names are cannonicalized using file-real-path.
- the fasl file (if produced) is the result of
(string-append (fasl-directory) (file-real-path filename) ext)
where ext is either ".ikarus-32bit-fasl" or ".ikarus-64bit-fasl".
- The old behavior (placing the fasl files in the same place as the
library files) can be achieved by setting IKARUS_FASL_DIRECTORY='/'.
- Ikarus fasl files and source files are not compared using
(< (file-mtime ikfasl) (file-mtime filename))
instead of
(<= (file-ctime ikfasl) (file-ctime filename))
given file one expression at a time. Most notable difference is
observed when the loaded file captures a conitnuation in one
expression. Re-invoking this continuation should evaluate the
next expression that has not been evaluated yet, and not the
expression following the call/cc.