It just occurred to me that the name --r6rs-repl might confuse people,
making them think it's a repl that obeys the R6RS semantics, which it's
not.
Maybe we should split the options into two groups:
--repl (default)
--no-repl
--script <script-name>
--load-script <script-name> (existing --script option)
--no-script
with
ikarus --r6rs-script <file> == ikarus --no-repl --script <file>
and
ikarus <file> == ikarus --repl --load-script <file>
Actually, coming to think of it, I don't think the "load-script" is
that useful now that we have a repl-in-a-script mode. Maybe Ikarus
should by default run as:
ikarus == ikarus --no-script
ikarus <file> <arg>* == ikarus --script <file> <arg>*
The command-line options need serious reworking. Any suggestions
welcome.
Aziz,,,
On May 31, 2009, at 1:42 PM, Abdulaziz Ghuloum wrote:
[resending due to incompetence of my to-be-ditched hosting provider]
Commit log entry attached. Enjoy.
Aziz,,,
revno: 1805
committer: Abdulaziz Ghuloum <[email protected]>
branch nick: ikarus
timestamp: Sun 2009-05-31 13:32:33 +0300
message:
NEW: ikarus --r6rs-repl <script-name>
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.