On 26-Mar-09, at 8:06 PM, Bradley Lucier wrote:
Marc:
I don't have time right now to check this. I'm hoping that whatever you come up with integrates well with a hygienic macro system (specifically with syntax-case, that seems to be the most popular system). Perhaps this does, I didn't check.
Brad
Strawman v2 does not support hygiene "all the way down". That's because syntax-case.scm does not know anything about namespace declarations.
My short term goal is to design a basic module system that is sufficiently powerful to modularize the Gambit runtime system. Hygiene is not required for that. One thing that is missing is the ability to export record types.
Of course I don't want this basic module system to be incompatible with hygienic macros, since that is a worthwhile feature to support.
But let me repeat myself... strawman is meant mainly to kick around some ideas and elicit discussion.
The main question in my mind... what is lacking in this module system to implement other module systems (such as Scheme48's, PLT's, Chicken's, Bigloo's, Guile's). I would like people on this list (yes *you*) to chip in by picking one of these module systems and trying to implement it on top of strawman. It is very likely that v2 is insufficient, but at least we can have a clearer idea of what is missing, and this can feed the design of the next version.
Marc