This is the mail archive of the
guile@sources.redhat.com
mailing list for the Guile project.
Re: pssyntax.ss and module system
- To: djurfeldt at nada dot kth dot se
- Subject: Re: pssyntax.ss and module system
- From: Jost Boekemeier <jostobfe at mango2 dot zrz dot tu-berlin dot de>
- Date: 01 Sep 2000 19:16:21 +0200
- Cc: <guile at sources dot redhat dot com>
- References: <040e01c0131c$ae73a380$e30b0ac0@poet.de> <xy7g0nl7b0y.fsf@mdj.nada.kth.se> <p2tn1htcjzz.fsf@ruebe.zrz.tu-berlin.de> <xy7em355hw2.fsf@mdj.nada.kth.se>
Mikael Djurfeldt <mdj@mdj.nada.kth.se> writes:
> Well, then you should read it again, because separate compilation is
> one of the features which this module system is designed to support.
> It's even mentioned explicitly in the abstract.
Yes, I know that. But I don't think this is what ML' people mean
when they talk about separate compilation:
In section 5.1 they say that "it is necessary to first load or visit
m1's object file" to compile m2." They don't say that it is necessary
to load or visit m1's interface in order to compile guile.
I think this is necessary because all module connections are rewritten
into a low-level import primitive and their import primitive refers to
the module itself, not to an abstract interface as in MZ Scheme for
example.
> The design makes sure that all syntactic abstraction can be resolved
> at compilation time. The fact that you have to visit interfaces and
> macro defintions is equivalent to C's header files with declarations
> and preprocessor macro definitions.
In "C" the compiler examines interfaces, not object files, no?
Jost