[R6RS] Re: Slides for "modules talk"

Manuel Serrano Manuel.Serrano
Tue Sep 28 06:05:52 EDT 2004


Hello everybody,

I'm starting working on the modules. I will try my best to understand
what would it means to compile these modules to the current Bigloo
module system. In order to accomplish this I have several questions 
regarding the Kent's slides:

* What is a derived-definition? I can't find the definition.

* what is a begin definition? (This is related to the issue above.)

* 
-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----
A modules' inits and non-keyword definitions are evaluated at least
the first time a require form naming the module is evaluated, a 
require also-for-syntax form naming the module is expanded, or a 
require only-for-syntax form naming the module is expanded.
-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----

I don't really understand what all that means. First, what is a
keyword-definition? I presume that it is a macro definition?

Then, the first sentence seems to mean that evaluating an "require"
form returns a value. In your mind, is it possible to evaluate something
such as "(+ (require foo) 4)"? If yes, what is the value of "(require foo)"
the evaluation value of the last init-expr?

What confuses me a lot in the paragraph above is that the word
"evaluation" which seems to be applied in very different
contexts. When a require form is evaluated for import. I presume that
you are talking of execution time (when the program runs). When a
require form is evaluated for syntax, I presume that you are talking
of compile time (when the module is being macro expanded or compiled).
These are totally unrelated.

I don't really understand your point here. Could you clarify this for me?
Thanks in advance.

-- 
Manuel


More information about the R6RS mailing list