> they make semantics clear in one place in the source code

For this reason per-module macros invocations should maybe be restricted to the 
top of the module (as `#? strongSpaces` is now), with only imports and static 
code allowed before them: the user anyway has to look at the module's top for 
imports, to know how to read/understand the module's code. But anyway for now 
imports are allowed throughout the modules, to read a part of it the user has 
to look through all preceding top-level code. The proposed per-module macros 
are supposed to be invoked only at the top-level too, not much difference with 
imports.

> Who gets to dine first?

The macros are invoked in the order in which their invocations follow, the user 
is in full control, the macro's author doesn't and shouldn't decide this. It's 
the same with today's per-block and per-routine macros, again no difference.

Reply via email to