emacs-devel
[Top][All Lists]
Advanced

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

Re: byte-code optimizations


From: Paul Pogonyshev
Subject: Re: byte-code optimizations
Date: Wed, 22 Sep 2004 01:31:59 -0200
User-agent: KMail/1.4.3

> On Tue, Sep 21, 2004 at 05:05:30PM -0400, Stefan Monnier wrote:
> > What defsubst* does is treat the argument as a kind of "lexically scoped"
> > variable, but only in very limited ways.  I.e. the
>
> ...
>
> >      (defsubst* foo (x) (symbol-value x))
> >
> >      (foo y) => (symbol-value y)
> >
> > whereas our optimization won't be able to do that because it can't assume
> > a "somewhat lexically scoped" semantics.
>
> I vote for saying "you're not allowed to treat defsubst argument bindings
> as normal dynamic bindings, and if you have tons of code that does, well
> screw you, you're probably a crappy programmer anyway."

While I do agree with this, it's generally better to avoid changing
stabilized behaviour only for optimization reasons.  Otherwise,
really-difficult-to-debug bugs can jump out of nowhere.

Paul





reply via email to

[Prev in Thread] Current Thread [Next in Thread]