FLIM 1.14.5 bug-fix

Shuhei KOBAYASHI shuhei @ aqua.ocn.ne.jp
2003年 6月 29日 (日) 23:39:24 JST


Katsumi Yamaoka <yamaoka @ jpl.org> writes:
> ぼくは APEL XEmacs package を無くしたいです。

私は XEmacs packages 自体をどうかと思っています;-)
;; Mew や SKK なども古いのが入っているみたいなので.

> load-history を主に参照するのは人間だと思うのですが、だとすれば
> "Defined by poe.el." などと書くのは、さらに効果的ではないでしょうか。

既に "defined by APEL." と書く話も出ているみたいですが, 私はこれには
あまり賛成できません.

apel/ChangeLog より:

| 1999-11-13  Shuhei KOBAYASHI  <shuhei @ aqua.ocn.ne.jp>
|
|	* Removed "[SOURCE INFO]" style comment from docstrings.
|	Most of them are out of sync, and now there are some other
|	ways to get such information.


> > それでは, byte-compiler を以下のように修正して load-history の更新
> > を defalias に押し付けたらどうだろうか, という話はしていましたっけ?
> いや、記憶にありません。これはぜひ FSF に提案していただきたいです。

byte-compiler は, defvar に関しては load-history を更新する code を出力
しているわけですから, 何か事情があって defmacro/defsubst/defun に対して
はそのようなことをしていないのだと想像していました.

でもこの辺は私にとって既に未知の領域なのでこれから調べないといけません.
とりあえず, Emacs 21 からは defvar に関しても条件付きになっていることに
気付きました. 単純に fset を defalias にするのはやはり問題ありなのかな?

emacs-21.3/lisp/emacs-lisp/bytecomp.el:
| (defun byte-compile-defvar (form)
[...]
|       ;; Put the defined variable in this library's load-history entry
|       ;; just as a real defvar would, but only in top-level forms.
|       (when (null byte-compile-current-form)
|         `(push ',var current-load-list))


> それが反映された Emacs が出て 2〜3年もすれば、必ずやっておいて
> 良かったと思うでしょうから。

短期的には *-maybe などによる定義が load-history へ二重登録されることに
なってしまいますけどね. 二重登録されても問題ない? unload はどうなる?
;; そもそも unload って使われているのか? まともに機能するのか?
-- 
Shuhei KOBAYASHI




More information about the APEL-ja mailing list