Re: [Chicken-users] Conflict between simple-macros and other extensions?

From:

felix winkelmann

Subject:

Re: [Chicken-users] Conflict between simple-macros and other extensions?

Date:

Fri, 7 Oct 2005 07:57:01 +0200

>
> You know, Felix -- it would be great to have a single, well-written,
> side-by-side comparison of '(use require-extension require-module
> import load ...) somewhere. I respect that there must be valid reasons
> for having all of these directives. Though the application developer
> in me cries out "just give me one directive that Does The Right Thing
> in any context!", I'm willing to pat the AD-in-me on the head and
> console him if there's a good rationale for maintaining this rather
> large suite of inclusion/linkage directives.
>
Thomas has already given a good explanation of the differences
of the loading forms, but let me add a few words here:
- WE MUST HAVE STATIC LINKING - this means, the loading/linking of
a (implementation) module has to be separated from the import of
identifiers from
(interface) modules
- We have several syntactic module systems and they work slightly
differently, even though the basic interface is quite similar.
We definitely need some common syntax (common to both syntax-case
and simple-macros) to handle the loading/linking, though. Suggestions are
welcome.
- simple-macros is still experimental. Andre will submit the module-part
as a SRFI at some stage, so the syntax and semantics may still change.
- I still think a module system should be optional for the base system. This
makes it slightly awkward sometimes to load/link the relevant support
code when using one of the module systems.
I apologize if all those options make your head spin (I feel just the same),
but this is all evolving yet.
cheers,
felix