Arthur A. Gleckler scripsit:

> What does Chicken do?

I am not the (or even an) implementer, but I believe that "module"
in Chicken is not a macro, but primitive syntax.  All it does is to
make any definitions use magic names of the form "modname#truename".
When the module is imported, the "modname#truename" names are located
and aliases are constructed for them in the current context.

A Chicken module is not an implicit begin.  In particular, the semantics
of the forms in a module body are exactly the same as those of the REPL:
they are read and eval'ed (or the compiled equivalent) one at a time.
Only the usual kind of forward references are allowed: undefined
identifiers generate a warning and are treated as variables, never
as syntax.

-- 
While staying with the Asonu, I met a man from      John Cowan
the Candensian plane, which is very much like       [email protected]
ours, only more of it consists of Toronto.          http://www.ccil.org/~cowan
        --Ursula K. Le Guin, Changing Planes

_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to