FLIM 1.14.5 bug-fix
Katsumi Yamaoka
yamaoka at jpl.org
Thu Jun 26 22:32:40 JST 2003
>>>>> In <87d6h1gm50.fsf at tleepslib.sk.tsukuba.ac.jp>
>>>>> "Stephen J. Turnbull" <stephen at xemacs.org> wrote:
KY> In principle, APEL does never redefine existing functions having
KY> no problems,
> In practice in XEmacs it regularly does.
Yep, my recognition was possibly lacking.
> We should build APEL under 21.1 (in practice I think we're actually
> building under 21.4), or some packages depending on APEL may not run
> on 21.1, because APEL decides what to provide at compile time, not
> at load time. This means that anything added or fixed in 21.4 or
> 21.5 gets redefined by APEL.
I was really often troubled with the problem (since I'm now using
only 21.4, I tend to forget it, though). It is mainly caused by
the def*-maybe macros which switch function definitions at the
compile time. Although it was probably a rational technique for
early days, it is not suitable to the XEmacs package. In
addition, def*-maybe began to be abused by other programs.
I and Shuhei KOBAYASHI used to try to overcome the problem. The
plan was to make def*-maybe macros switch function definitions
at the load time by default. The code already exists in the
branch of cvs.m17n.org, but it is not fully verified.
> We could of course just remove APEL and everything it depends on from
> the packages and tell the users to build their own. This is better
> for the users, but rather annoying for the developers. Or we could
> rebuild APEL for each version of XEmacs, but aside from being extra
> work for Norbert, this would be hard to make work in installations
> providing multiple versions of core XEmacs.
Is there any XEmacs package using APEL actively? It seems to be
very few to me. I think separating APEL from XEmacs is good
idea even though I am one of the APEL developers.
KY> but it fixes bugs in old function definitions, emulates functions
KY> which aren't available in old Emacsen, ...
> Right. So that means when I do C-x C-e on the sexp provided by the
> (non-APEL-using) Original Poster, if APEL has been installed in my
> XEmacs I will see up-to-date interfaces and behavior, and typically if
> I then do C-x f on the function, it looks like the version distributed
> in core XEmacs because it doesn't get defun'ed by APEL, instead the
> function cell is set directly. ISTR that APEL even replaces subrs in
> the function cell of some symbols without saying so in the docstring.
> This is very confusing when debugging.
I sometimes want to keep away from APEL for the same reason.
> All this could be fixed either in APEL or in XEmacs, but I think it
> would require a fair amount of work either way.
It will be easier to abolish APEL from XEmacs. I am writing so
in the hope that other APEL developers bring counterargument. :p
--
Katsumi Yamaoka <yamaoka at jpl.org>
More information about the Emacs-mime-en
mailing list