This is the mail archive of the guile@cygnus.com mailing list for the guile project.


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

Re: module interface changed or changing?


Andrew Archibald <aarchiba@undergrad.math.uwaterloo.ca> writes:

> ; > I do like Scheme48's module system (Jonathan Rees: Another
> ; > Module System for Scheme) a lot better than the current one. Has anybody
> ; > ported that to Guile already ?
> ; 
> ; I guess not.  Would be cool - I like it too.  In fact, the mailing
> ; list archive seems to suggest that everybody here likes it :)
> 
> I only just found an online description of it.  It's a bit hard to
> understand, but it's at 
> http://www.cs.hmc.edu/~fleck/envision/scheme48/module/module.html
> 
> I'm not sure I understand it, but it sounds like a very good module
> system to implement.

Olin Shivers posted a nice and clear informal description to
comp.lang.scheme.scsh.  Should be in DejaNews.

> A few improvements I see:
> 
> Well-defined/documented.
> Behaves well in the presence of changing modules (I keep having to
> restart guile to reload my modules)

Hmmm.  I was playing with the idea to implement some file time
tracking in the current module loader, so that it would check file
modification times upon (use-modules ...), and reload the changed
files and those that depend on them.  I'm waaay busy these days, so I
didn't get anywere, but it seems doable.  There is one problem though
- when reloading, macros don't seem to get redefined.  Don't know what
to do about this one.

> Handles dynamically linked modules in a reasonable way.

What is a reasonable way?

> Andrew

mike.