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

meaning of local define

    I also thought that local DEFINE's were supposed to be
    "like top level ones," which are done sequentially

At some point in time (I don't remember what it currently does) MIT
Scheme collected top level defines and did them all at once (with
unassigned values, to detect use before the new value is assigned)
before running any code (the defines afterwards being treated as
assignments), thus treating top level define and local define similarly.
The only sequentiality inherent in top level define comes from
interaction, namely that some code can be run before all defines are
apparent.  I don't view this as a difference between both.

    My BNF, and the current RRRS, say that DEFINE's can't occur in BEGIN's;

The only problem is the same that originally gave us (progn 'compile
...) in MacLisp, namely macro expansion.  Since we do not have macros
in the standard this is moot probably.