Aziz,
Thanks for the reply. I agree with you that there are multiple
interpretations that make sense.
My question comes as a result of discussions with jao. They got me
thinking about what barriers to a highly dynamic development runtime are
inherent in R6RS. It appears that there actually aren't that many, if
any; it's mostly up to the implementor.
Abdulaziz Ghuloum wrote:
Why would that be absolutely necessary? Or did you mean reload the
library when you said recompile the library?
Hmmm. I thought recompilation would be necessary in the case of
procedures that depend on the changed procedure. But if reload would do
the job, then cool.
then recompile any currently loaded dependent libraries (and in a
*really* dynamic environment, update any currently running
threads/applications which depend on the changed library).
If you're going this far, you might as well start a new ikarus instance,
no?
Well, I'm not necessarily lobbying for this behaviour in Ikarus. But
this is a litmus test for the hardcore dynamic lanuage folks. I.e. can
they make a source change and have a running application reflect the
change. Smalltalk and Factor do this for example.
I know of one particular argument in favor of this behaviour. Sometimes
you have to get your program into a certain state in order to test some
code change. It's nice to get your program to that state interactively,
then make code changes until you see the behaviour your want. As opposed
to maybe writing a script which gets your program to that state, and
using it each time you want to test the code change.
Or take for example one of the graphics demos; it's nifty to get it
running and then notice the effects of changing the code in a live
fashion. So live coders (the performance art sort) would want this sort
of thing.
But to be sure, I'm getting along just fine without this dynamic
behaivour. (At least for now :-) ).
Are any R6RS implementations exploring this territory?
I think PLT's "enter!" does that, though I don't know if it works with
R6RS libraries. Try it and see if it's what you want.
Cool, didn't know about that.
Ed