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

Loop questions

re: It would certainly be easier if the langauge didn't require variables to be
    given meaningless values.  

There is a sense in which unbound variable checking for free-variable
references requires the variable to be given a value that is essentially
meaningless, except to detect the unboundedness.

Had CL make "unboundedness" a first class concept, then the bound but not 
user-initialized loop variables could have been specified to be that (except
for storage-representation shifts).  That wouldn't make the type analysis 
and propagation in your compiler any simpler however, -- just more palatable.

Lucid has numerous "unbound object" types used internally, which are even 
visible externally as the Built-In-Class UNBOUND-OBJECT; but I dunno if we
are ready to export them and document their usages.

re: b.t.w., you can add base-character, (signed-byte 32), (unsigned-byte 32),
    and system-area-pointer (or char*) to your list of types that Lisp
    compilers (or at least Python) uses non-descriptor representations for.

Interesting! this is in addition to FLOAT and FIXNUM too?

-- JonL --