2005-06-06

_例外条項で対処

対策していただけたのであれば結構です。 私がこういう事を言うのも、 Rastに期待していることの裏返しですから、 気を悪くされないよう。

しかし、例外条項には不利な点もあり、 一つの完結したアプリケーションなら十分でも、 Rastのようなライブラリ的使い方を想定しているプログラムでは不十分です。 なぜなら、他のGPLコードとはあいかわらず混ぜられないからです。 全てのGPLコードに例外条項を設ければ回避できますが、 自分以外の著作権者が存在するコードではそう簡単ではありません。 そのような場合、著作権者全員に同意を得る必要がありますし、 必ずしも同意が得られるとは限りません。

例えば、(どう嬉しいかは置いといて)KonquerorとRastをリンクする場合を考えてみてください。

_JavaScript

今まで猿真似でしか使ってこなかったのですが、 あんまり知らないのもどうだろうと感じたので、 少し勉強してみることにしました。

WebReferenceのページ からCore JavaScript GuideとCore JavaScript Referenceを拾ってきて、 適当に拾い読みしました。 これで言語自体は大体分かった気がするのですが、 世の中で実際に使われているようなスクリプトを書くには情報量が不足しているようです。

例えば、よく「こうしてやると、ここのテキストが変化する」みたいな例が書かれていますが、 ああいうのはちっともカバーされてないんですよね。 どのアトリビュートが何なのかって、 どっかに書かれているものなんでしょうか。 DOM2とCSS2でカバーされているんでしょうか。 私はDOM1しか知らないので、DOM2の仕様書を読まなきゃならないんでしょうね、多分。

それと、やっぱり大量に画面で眺めると疲れるので、 良書があれば欲しいなあと思うんですが、 何がいいのかさっぱり分かりません。

新しさで言うと、 JavaScript: The Complete Reference, Second Edition なんですが、 IEに偏ってそうなのと、 ページ数がちょっと...

JavaScript: The Definitive Guide は良さそうですが、 これも随分厚い上、 古いんですよね。 古いことがどのぐらい致命的なのかは分かってないんですけど。

_XML-RPC

XML-RPCって、セッションがなくて不便だなあ、と思ってたら、 Authenticating XML-RPC なるページを発見。 でも、これ、ただの提案であって、 実装はされてないんですよね。 SOAPだとどうなのかな。

_Pythonの起動は遅い(かもしれない)

単なる疑問。何も実行しない時、Pythonだけが変に遅い気がします。

$ time perl -e ''
0.00user 0.00system 0:00.00elapsed 83%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+396minor)pagefaults 0swaps
$ time ruby -e ''
0.00user 0.00system 0:00.00elapsed 80%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+378minor)pagefaults 0swaps
$ time python -c ''
0.01user 0.00system 0:00.03elapsed 51%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+787minor)pagefaults 0swaps

Guileはもっと派手に遅いはずですが、 それは置いといて、 Pythonはやっぱり遅い感じがしませんか?

何もしないと言っても、 実際には組み込みの関数とかはロードされているわけで、 全部が同じ状況ってわけではありません。 しかし、PerlもRubyも、何も明示的にロードしていない場合でも、 結構たくさんのクラスなり関数なりがロードされているわけで、 Pythonが遅い理由は解せません。 __init__.pyとか、やたら変なファイルを見に行くせいなんですかね。

本日のツッコミ(全2件) [ツッコミを入れる]
_ sato (2005-06-07 03:32)

> Pythonの起動は遅い
奇遇ですが、高林さんも以前に同じことをやっています。

何もしないプログラムの性能
http://namazu.org/~satoru/diary/20030907.html

_ knok (2005-06-07 16:57)

straceではかってみると、出力ファイルのサイズが明らかに違いますね。rubyが103行で約7kb, pythonが597行で約46kb.

[]