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

Re: proposal LOAD-TIME-EVAL:REVISED-NEW-SPECIAL-FORM



    Date: Tue, 20 Sep 88 17:10:12 pdt
    From: Eric Benson <eb@lucid.com>

    I agree completely with Moon's criticism of this proposal.  

I also agree with Moon's criticism.  I think a simpler mechanism for
this should be easy to discover.
								
								I would
    prefer to remove #, and its functionality altogether from the
    language.  It just isn't that important.  I have yet to see any use for
    #, which could not have been achieved by other means.

But this last statement just isn't true.  Here is an example:

I want to be able to define a function, and have one of the function's
"quoted constants" be a little table, lets say an array.  I need to
compute the array at load time, using my own special code, because I
need to arrange for some of the functions to share arrays.  Now, if I
was just writing a defun, I could say:

(defun a-little-function (x)
  (aref #,(get-table-for 'a-little-function '(x))
        x))

But, of course #, doesn't work inside of macros.

Before proposing that I use a gensym, and somehow arrange to set
its value to the right thing, consider that portable efficiency
of the resulting code is almost guaranteed to be an issue whenever
anyone wants to do something like this.
-------