emacs-devel
[Top][All Lists]
Advanced

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

Re: defcustom standard value and byte-compilation


From: Tassilo Horn
Subject: Re: defcustom standard value and byte-compilation
Date: Wed, 11 Mar 2015 16:04:06 +0100
User-agent: Gnus/5.130012 (Ma Gnus v0.12) Emacs/25.0.50 (gnu/linux)

Stefan Monnier <address@hidden> writes:

>> I don't think this is an option for AUCTeX as it supports Emacs
>> versions down to 21.4 and also XEmacs.
>
> Of course, I think that's a mistake ;-)

I'd have no problems cutting support for emacs <23 or even <24, but
cutting support for XEmacs is something which I'd prefer not to do
without extremely good reasons although that would make life much more
easy.

>> And several parts make use of the dynamic binding of locals. :-(
>
> That's no problem, lexical-binding supports dynamically scoped
> variables as well (you just have to declare them beforehand via
> (defvar <var>)).

Yes, I know.  But having non-prefixed (defvar name) etc just looks so
damn wrong.

>> But customize shows the value of the expression, not the expression
>> itself.
>
> IIRC there's a way to get the expression rather than the value.

At least I couldn't find one in the customize UI but maybe you're right.

>> Ok, but couldn't the standard form be at least macroexpanded?  That
>> shouldn't cause any harm and would take care of the typical use-case
>> where one uses macros of a package which might not be available at
>> load-time.
>
> Changing the defcustom behavior in Emacs-25.1 to be the same in
> dynamic-binding than with lexical-binding wouldn't help you with
> XEmacs and Emacs-21.4.

No, sure.  And macroexpanding in dynamic-binding wouldn't make it the
same with byte-compilation in lexical-binding.  But still it would
eliminate the (void-function some-macro) error at load-time.  There's
also an issue from 2011 about the very same thing:

  https://debbugs.gnu.org/cgi/bugreport.cgi?bug=9712

But I can also see the good thing about the current behavior.  It
consistently fails on all Emacs/XEmacs versions (if dynamic-binding is
in use and not something else loaded, e.g., cl, before the file in
question).

Bye,
Tassilo



reply via email to

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