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

Local type info for compilation



    Date: 12 SEP 1978 0523-EDT
    From: JONL at MIT-MC (Jon L White)
    Subject: Local type info for compilation
    To: KMP at MIT-MC
    CC: (BUG LISP) at MIT-MC, LISPM at MIT-MC

    (+ <frob>)  is preferable to (+ <frob> 0) for announcing that <frob>
    will be of type FIXNUM (similarly for +$ and FLONUM), and most likely
    that will do whereever you wanted a local type specification.
       If there is going to be some other key word, I would suggest something
    without the word "force" in it, since the action here is not a type
    coercion to one type or other, but rather merely the "telling" of 
    information to some processor (compiler, data checker, interpreter).

(LOCAL-DECLARE (FIXNUM) <frob>), as I think someone mentioned, would be 
ok with me. I object strongly to saying (+ <frob>) because that relies on
you telling me that the compiler will make a certain assumption at
that point. Since you maintain the compiler this is reasonable, but is
not what I think of as classically 'clean' - or even close. This type of
thing wants a builtin primitive in MacLISP that could be a compiler macro
for all I care doing exactly that - Just that I object highly to handling
its definition at the user-level. 

--kmp