node.js と method_missing または AUTOLOAD の話

EcmaScript5 では基本的に method_missing できない。

firefox では昔から __noSuchMethod__ というので実現できていたのだけど、ES.next にはいったりはしなさそうだし、他のブラウザでは実装されることはない感じ。

一方、ES Harmony では Proxies という仕様があって、これを利用すると methodmissing っぽいことが実現可能となる。node.js では --harmony_proxies オプションをつければ利用可能になる他、node-proxyという変態モジュールをつかうと、なんかつかえるようになったりする。

Proxies つかうとmethod_missingは実現可能なようで、ここのへんに実装の方法がのっていた。 http://d.hatena.ne.jp/hagino_3000/20120403/1333459962

というところまで調べておいた。

(どうでもいいけど、よく ES Harmony を ES Harmful とまちがえて type しているときがあります)

Published: 2012-08-16(Thu) 00:40