From: Hiroshi Nakamura Date: 2011-06-03T13:27:07+09:00 Subject: [ruby-dev:43616] Re: [ruby-list:48149] Re: requireが配列を取れたら便利だと思うんだけど.. 2011/6/3 Urabe Shyouhei : >> autoloadはRails、RubyGems、Net::HTTP、CGIで使われ、hot-deploy(クラス定義の動的差し替え)なども一般的に行われている(環境も多くある)ことから、使わない方向、ってのはないんじゃないですかね。安全に同様の機能を満たすための別の仕組み、というのはあるかもしれませんが。 > > 前にwycatsに聞いたところによるとRails3に関してはautoloadするコードは残っ > ているが非推奨で、少なくともデフォルトではオフになっているということだっ > たと思います。 おお、そうなんですが。ざっとコード見たところでは、Passenger向けに:preload_frameworksオプションがあるだけで、消える気配はないような気がしていました。 wycatsは「1.8のautoloadがthread-unsafeなのなんとかしろ」と最初に騒いだ本人で、ついに1.8でも(JRubyでも)修正される今、状況は変わったりしないかな?誰かこの辺のRailsの立ち位置を知ってる人はいませんか。 > rubygemsはよく分かりませんが、 世の中のmulti-thread×gem依存なやつが関係するので、影響大きいと思うなあ。 > net/httpのは歴史的経緯(やが > てrequireになる)だと思っています。 OpenSSLのgem化。。。は別にして、歴史的経緯ってなんでしたっけ。 > cgiは今時cgi/htmlを使うやつはおらんと > 思うので、あれを一般的と呼ばれるのはちょっと。 これは同感です。multi-threadでは使いませんしね。RDocも同様。 > というわけで一応、方向としてはautoloadは徐々に殺していきましょうねという > 空気感は醸し出してきたつもりなんですが。まあ今すぐ死ねってのは無理ぽいの > は事実なので、それなりの手当ては当面必要と思いますが、でもやっぱ最終的に > はなくす方向に持っていきたいなあ。 遅延読み込みの代替案があれば、廃止でもいいと思います。