[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: inheriting shimbun-text
>>>>> In [emacs-w3m : No.08113] 三好さん wrote:
> 私が作成したsb-f1fan.el, sb-makanai.el, sb-msports-nifty.el,
> sb-yahoo-sports.el に関しては、
> 意図して両者を継承した訳ではありません。
> 記憶は定かではないのですが、参考にしたモジュールで両者を継承してあっ
> たので、同じように継承したのだと思います。
ぼくもエラそうなことを言えるほどわかっていないので、この件で、み
んなもわかってないんだ、ということが判明して安心しました。;-p
でも、わかる人には何でもないことなんですかねえ。出来上がったコー
ドは実にすっきりしてしまうんですが、何がどうなっているかを簡単に
把握できないのが辛いです。例えば、動作時に使われる f1fan の
content-start の値は、こんなにこみいった場所にあります。
(let ((shimbun (shimbun-open "f1fan")))
(aref shimbun
(get (intern-soft "content-start"
(aref (get 'shimbun-asahi 'luna-class) 1))
'luna-slot-index)))
shimbun-open の中身を展開して書くのは、ここでは諦めました [1]。
それから、ユーザオプションの値に応じて動作をダイナミックに変更す
るような用途に luna は向いていないですね。今般 prefer-text-plain
を作っているときに、改めて感じました。
[1] 記事を読んでいるときに shimbun-open はかなり頻繁に実行される
はずですが、これが呼ぶ luna-make-entity が毎回新規に vector
(というか obarray) を作っているように見えます。たぶん
garbage collect が後で消してくれるんでしょうけれど。