This is the mail archive of the kawa@sourceware.org mailing list for the Kawa project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: interactive development and code re-loading


On Sun, Oct 11 2015, Per Bothner wrote:

> What I'd like to decide is *when* Kawa should use "interactive mode"
> - i.e. to add indirection and automatic re-compilation.  The answer
> is certainly not "always" because of the costs.  Having interactive
> mode be controlled by flags is possible, but the more flags people
> have to remember, the more confusion.  So having good defaults and
> simple rules is better.

I would say that in R7RS mode, "always" is required for code that is
defined in the interaction-environment, i.e. outside of libraries.
Basically (set!  foo ...), if foo was defined in the
interaction-environment, should always work regardless what type/value
foo previously had.

It seems to me that a per-library flag would be quite convenient,
because some libraries tend to be more stable than others.  Usually, I
want to re-load new/unstable libraries but very rarely older or
third-party libraries.  Alternatively we could say that "stable"
libraries should be compiled to jar files and be added to the JVM
classpath while "unstable" libraries should be loaded from source.

I'm still wondering how a re-loadable version of define-simple-class
could possibly work.

Helmut


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]