[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: inline
>>>>> In [emacs-w3m : No.01863]
>>>>> Katsumi Yamaoka <yamaoka@namazu.org> wrote:
山岡> あらら、確かに E21 では
山岡> (byte-optimize-inline-handler
山岡> '(inline
山岡> (message "a")
山岡> (message "b")))
山岡> => (progn (message "a") (message "b"))
山岡> にしかなりませんねえ。
(symbol-function 'message)
=> #<subr message>
のような場合は普通に funcall して使う、
(require 'rx)
(symbol-function 'rx-to-string)
=> #[(form &optional no-group) ...]
のような場合は inlining することによって funcall の overhead を
削ることができる、ということのようです。
(byte-optimize-inline-handler
'(inline
(rx-to-string '(or "a" "b") t)))
=> (progn
((lambda (form &optional no-group)
(byte-code ...))
(quote (or "a" "b")) t))
XEmacs の `message' は subrp ではありませんでした。
--
Katsumi Yamaoka <yamaoka@namazu.org>