[Mew-dist 15493] Re: 弱気
Shun-ichi GOTO
gotoh at example.com
2000年 12月 14日 (木) 20:23:59 JST
>>>>> at Thu, 14 Dec 2000 19:36:19 +0900
>>>>> kazu == Kazu Yamamoto (山本和彦) <kazu at example.com> said,
> それはそうと、defsubst の副作用って何があるんでしたっけ?
> 前に聞いたような気がするけど忘れた。
kazu> info より:
副作用とはそーゆーもののことを呼んだのですか。:-(
引用された文章はinline 展開全般の(defun に対する)デメリットであり
defmacro にも全く同じ事がいえますよね。
加えていうならば macro の方が、引数が複数箇所に展開される事があり得る分、
副作用は多いですし。
ex. ... 全然よい例ではないが.
(defmacro foo (a)
`(let ()
(insert ,a)
(message ,a)))
(let ((str "string"))
(foo (setq str (concat str "-prefix"))))
mew-flet のような special-form (ぽいの)を作るのはmacro にしか出来ません
が、ただのinline 定義として見た場合のmacro に対する defsubst のデメリッ
トは、引数の変数分 varbind が余計に発生してしまう事くらいかなぁと思うの
ですが、他になんか障害があったかな?
--- Regards,
Shun-ichi Goto <gotoh at example.com>
R&D Group, TAIYO Corp., Tokyo, JAPAN
Mew-dist メーリングリストの案内