伊藤計劃氏 逝去

日本は、また一人、SF の可能性を失ってしまった。

虐殺器官』『メタルギア・ソリッド』『ハーモニー』の著者である伊藤計劃氏が逝去された。どうやら本当の情報らしい。本人のはてなダイアリーなどで公式発表がないため、死因等の詳細は不明のままだ。

いくつかの証言が挙がっている。篠房六郎氏、佐藤亜紀氏がそれぞれ blog に情報を載せた。

日本の SF 作家として注目され、次のステップへと移行する直前での出来事だといえる。……あまりにもショックな出来事なので、今日は1日頭が朦朧としがちだった。

最近はあまりにも逝去の報が多すぎる。だが死者が何かを生み出すこともない。それでも、伊藤計劃氏は残してくれた。著書という名の分身を。後は、それをどう生かし続けるかである。

関係者各位に、謹んでお悔やみ申し上げます……。

2009-03-23

UA 別 Error.prototype.message 値まとめ

この間 2009-03-02 版の ECMAScript 3.1 WD を読んでいたら、Error.prototype.message の初期値は空文字列であるという記述に変更されているのを見つけた。因みに、ECMAScript 3 こと ECMA 262 3rd Edition邦訳)では Error.prototype.message の初期値は実装依存の文字列であるになっている。つまり、ECMAScript インタプリタの実装ごとに値が異なる可能性があるわけだ。

そこでちょっと気になって、各 UA ごとに Error.prototype.message がどう定義されているかを調べてみた。次の表は、各 UA の Error.prototype.message 定義一覧である。

UAError.prototype.message
IE6""
IE7
IE8 RC1
Firefox 2.0.0.20
Firefox 3.0.7
Firefox 3.1 Beta 2
Safari 4 Beta
(AppleWebKit/528.16)
"Unknown error"
Google Chrome
2.0.166.1
""
Opera 9.27"Generic error"
Opera 9.52
Opera 9.64
Opera 10.0 Alpha
(Build 1285)

見事にバラバラであることがおわかりいただけると思う。特徴としては、当たり前だが Error.prototype.message は DOM 側(レンダリングエンジン)とは完全に隔離されているので、JavaScript エンジンごとの違いが顕著に現れていることが挙げられる。Safari と Google Chrome が良い例だ。

確かにこの状況はあまり好ましいものではない……。まあ、そもそも ECMAScript 3 にはこうした「実装依存」が数多く存在している。ぶっちゃけた話、「実装側に投げっぱなし」な状況だといえる。

ECMAScript 3.1 では、このような「実装依存」の記述を、できるなら仕様側で定義してしまおうとしているように見受けられる。仕様側でガチガチに決めすぎて後で困ったりすることもあるのだが、あまりにもルーズすぎると混乱の元になるだけだ。そこのバランスも修正の対象にしているのだろう。

2009-03-08

ひたすら jQuery な日

今日もひたすら jQuery をメインにプログラミング。なるべく要素はキャッシュしておいたり、メソッドチェーンを多用したり。基本的なことだが、後々のパフォーマンスに大きく影響するので欠かせない。

たまに自ら追加した要素やテキストノードなのに、find なんかでわざわざセレクタを介している jQuery プラグインを見かけたりすると……。まあ、それはそれでアリなのだが。

もう3月。そして、昨日、個人的にはちょっぴり「信じられない」ことがあったりした。まさか×××の××××××がたった××の××しかなかったなんて。その内××は向こうの××ミス、残り××は IE8 の IE7 Standards Mode がやらかした件。うーん。まあ hasLayouttrue にしたら簡単に修正できたけど。

Opera 9.64 がリリースされたりもした(リリースノート)が、個人的には Opera 10 の Weekly Build 希望。もう少しかな?

2009-03-03