CLIM mail archive
Re: reducing time overhead of text display (in 1.1)
Date: Tue, 21 Dec 1993 10:35 EST
I agree with your previous point.
> (Unfortunately, since CLtL2 the user is not allowed to write compiler macros
> for built-in functions.)
Can you clarify this one for me. I'm simply missing it reading CLtL2 pp.205-207.
Do you have an example of a compiler macro for a built-in function in CLtL1
that is not allowed in CLtL2. My impression was that I could always shadow
built-in functions define a compiler macro that does the argument optimization
and call the built-in from its original package. I agree, if a build-in function
is poor (not efficient) there is not much else I can do but to redefine it.
I forget what the issue was named, but user programs are not allowed to
add new "properties" to symbols that are defined by dpANS. That is, you
can't say (DEFVAR CAR 20) (I think), or (as Peter points out) you can't
define a compiler macro for FIND (for example).
Not all Lisp implementations fully enforce this, but I imagine that many
of them will.
By the way, if a built-in function is "poor (not efficient)", the *very
last thing in the world you should do* is redefine it. You should send
a clear bug report to your Lisp vendor. **Poor performance is a bug**,
and you should report it as a bug. This is the only way Lisp
implementations cn continue to improve. If you just silently fix stuff,
you are doing the whole community a disservice.
Main Index |