Island Life

< "Acting for the camera" 終了 | 今年もあと9時間だというのに仕事のキュー... >

2007/12/16

Spectrum, Stalin

普段あんまりちゃんと読んでないIEEE Spectrumなのだが、今月号はおもしろかった。 Taser銃の仕組みとか、MMORPGのbotとRMTで稼いでいた人の話とか。

-*-*-

comp.lang.schemeの 速いScheme処理系は?というスレッドにて

  • Stalinは速いぜ。チューニングされたCより速い。
  • ホント? 単に比較してるCコードの方がタコなんじゃないの?

という流れにStalinの作者Jeffrey Mark Siskind本人が 有無を言わさぬベンチマークをひっさげて降臨。おもしろいことになってる。

言語の速度の比較で忘れられがちなのが、最適化はトレードオフである ってところだ。StalinはCを経由してネイティブコードを出してるんだから、 Stalinが出すCコードと同じものを手で書いてやれば、Cだって同じ速度が 出るわけで。でもそれだとあまりに不便なので、利便性と天秤にかけた 結果として現在のCの処理系に落ち着いてる。Stalinがすごいのは Schemeだからではなくて、バランスの秤を実行時の速度という方向に 振り切ったらどうなるかというのを 実装して動かしてる ところだ。 理屈の上ではどんな言語でも出来る。それを実際にやってるかどうかという 問題。

Tag: Scheme