guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: new-model.text, please comment


From: Neil Jerram
Subject: Re: new-model.text, please comment
Date: 13 Sep 2002 19:53:05 +0100
User-agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7

>>>>> "Marius" == Marius Vollmer <address@hidden> writes:

    Marius>   guile/workbook/compilation/new-model.text

    Marius> Please have a look and comment on it.

Here are my few thoughts.  I don't have much experience or expertise
in this area, so feel free to explain the obvious to me if that's what
I've asked for :-)

    Marius> The output of the compiler is not specified.  Also,
    Marius> execution of languages other than Scheme is not
    Marius> considered.  It is assumed that additional languages are
    Marius> first translated to Scheme (or whatever variant of Scheme
    Marius> we offer) and then compiled normally."

High level thought -- is all of this new thinking necessary?  Are we
unnecessarily ignoring useful stuff that has already been worked
through on other projects?

    Marius> A module contains a set of bindings, and a binding is a
    Marius> pair consisting of a symbol and another object.  The other
    Marius> object in a binding can be a macro transformer or a
    Marius> variable.

    Marius> When a module is created, the set of bindings is empty.
    Marius> You can add bindings to the set, but you can not remove
    Marius> them.  Existing bindings can not be changed.  There can be
    Marius> at most one binding with a given symbol.

So it is impossible to change an existing macro definition?

    Marius> During compilation of a file that defines a module, that
    Marius> module is partially constructed (via code executed by
    Marius> eval-case).  The constructed module is made the current
    Marius> module, but it is not registered in the system.  Requests
    Marius> for a module with the name of the module-being-compiled
    Marius> will not find the partially constructed module.  When the
    Marius> compiler wants to follow a :module-ref statement with an
    Marius> explicit name, it must check whether that name refers to
    Marius> the partially constructed current module.

Don't understand the point here.  What are you trying to say by "will
not find the partially constructed module"?

Regards,
        Neil





reply via email to

[Prev in Thread] Current Thread [Next in Thread]