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

DEFUN&-CHECK-ARGS



    Date: 30 JAN 1981 1557-EST
    From: JONL at MIT-MC (Jon L White)

    I remember you had a question earlier this month about when
    DEFUN& would output (ARGS 'FOO ...).  Well, the variable
    DEFUN&-CHECK-ARGS only controls the insertion of number-of-arg-
    checking code into the body of the function -- thus if such code
    did get inserted, it is presumed that the ARGS needn't be
    changed (and there are reasons why you might not want to 
    change it frivously -- like, not having to unpurcopy the
    symbol).
Tell me about it.  I recently fixed a bug which was screwing me to the
wall because i set DEFUN&-CHECK-ARGS to NIL:  it was outputting 
(ARGS 'FN ...), INCORRECTLY.  And ONLY when i set DEFUN&-CHECK-ARGS to
NIL.  I take it you consider such ARGS information not useful.  My
complaint had nothing to do with changing ARGS info, only having it there
in the first place.  The only one who loses because of having to unpurcopy
the symbol is YOU, since MY functions aren't all defined with autoload
properties in Maclisp already;  when ARGS gets called on them, the
SY block is impure, even though it may be marked for purification.
I still think that such number-of-arg checking should be left to
the interpreter/uuo-linker, and i also think it is gross that the
interface from an APPLY or EVAL generated error is different from
one generated in-line.