Hello Andy, Andy Wingo <wi...@pobox.com> writes:
> On Wed 22 Apr 2009 09:55, l...@gnu.org (Ludovic Courtès) writes: >> The main differences between these two module systems are module >> versioning, and phase separation. Fortunately, R6RS' system is a >> superset of Guile's, so we could extend the latter so that it could be > ^^^^^^^^ >> used as the foundation of the former. > > Perhaps you meant to say subset? I believe we'll succeed in implementing > r6rs modules with Guile modules, but I don't think you could implement > Guile modules on top of r6rs modules. Yes, but what I meant to say was that R6RS' module system is stricter, or more precisely defined than Guile's, but... > Besides that, I don't think that phasing has any practical implication, > given the loopholes in the spec -- the set of bindings that a module > needs can be determined for *all* phases. That is to say, there is one > set of bindings that satisfies the needs of the spec for all phases of > evaluation of a module. Bindings needed at expansion time will be > present at runtime, but that's allowed. I didn't know the spec was so permissive. Given that, indeed, R6' module system is a subset of Guile's. Thanks, Ludo'.