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

Re: Compromise?

    Date: 3 November 1980 01:52-EST
    From: Daniel L. Weinreb <dlw at MIT-AI>
    Yes, the Lisp Machine MAKE-LIST should originally have been defined to
    take the area secondly as an optional argument.  What you make Maclisp
    do depends more on whether you are concerned with compatibility, or the
    right thing.  Both the NIL and Lisp Machine groups seem extremely
    reluctant to put up with language deficiencies, even minor ones, simply
    to be compatible with the other.
In this case, the MAKE-LIST one, it seems highly unlikely that open-coding
is important -- why not let it be a subr which "sniffs" at its two
arguments and reverses them if the one which should be an "area pointer"
is a "fixnum" and vice-verse? We could then say
  1) MAKE-LIST has the "right" definition
  2) but practical implementations have a kludge which is "tolerant" of
     a somewhat lazy programmer (and still is 99.99% fail safe)