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

Reply via email to