ガリレオの苦悩 と 聖女の救済

先日の「ガリレオ」テレビ特番の最後で、特番の原作本「ガリレオの苦悩」が出るよ、と言っていたので買いにいった。ら、なんとその短編集の隣りに新作長編まで置いてあった。映画もやっててタイムリーなこのタイミングで、ハードカバー二冊を同時に出すとはえげつない。

とはいえ、傑作「容疑者Xの献身」に続くガリレオの長編第二弾であることに加えて、帯の「おそらく君たちは負ける。僕も勝てない。これは完全犯罪だ」「理論的には考えられても、現実的にはありえない」にまんまと煽られて、ほくほくして即二冊買い。幸せな週末だ。

ガリレオの苦悩

ガリレオの苦悩

ガリレオの苦悩

というわけで、短編集「ガリレオの苦悩」のほうは読んだ。ドラマに登場していた「内海薫」も登場。特番で学生時代の話になってたやつは原作だといつもの湯川 + 内海薫 初登場の回だったんだな。ドラマで見た時はものすごい違和感だったけど、本で読むと普通。個人的には4番目の「指標す(しめす)」がおもしろかった。

ちょっと驚いたのが、ドラマで柴咲コウが演じた内海薫と原作の内海薫の違い。原作の内海薫はできる子じゃないですか!ドラマの柴咲コウは騒ぎまくって話に華をそえるワトソン役だったけど、原作の内海薫は良く言えば冷静で頭が切れる、悪く言えば華がないキャラ。
これを先に読んでたら、湯川の違和感より内海薫の違和感のほうが大きすぎて、ドラマはまともに見れてなかったかもしれないなあ。この順番でよかった。

聖女の救済

聖女の救済

聖女の救済

それでこの長編ですよ。まだ前半1/3くらいしか読んでないがおもしろい。

こちらにも内海薫が登場していて、短編集では空回りしたりもする彼女がこの長編では事件の手掛りを鋭く指摘する役割を担いつつある。草薙が完全にワトソン役なので、ペアになる内海は小ホームズにせざるを得なかったのか、東野圭吾の趣味がはいっているのか。
この長編の犯人は白夜行幻夜の主人公を思いおこさせる「とても頭がよい底の知れない女性」として描かれていて、今のところの構図は、鉄壁のアリバイを誇るその犯人に小ホームズ内海薫が湯川の援助を受けつつ対抗する、という雰囲気。よい。とてもよい。

まとめ。なんだかんだいいつつも、僕はまだ東野圭吾が好きすぎる。

ガリレオ φ

容疑者Xの映画が公開されるのにあわせてガリレオの特番をTVでやってる。
草薙と湯川の学生時代の話ってこの特番オリジナルなんだろうか。ネタ自体は原作にもあったかもしれないけど、なんかこう…。若い役者が演じてる、学生時代の湯川がもはや福山の物真似にしかみえないし、全体的にいまいちです…。

容疑者Xでの堤真一も原作の石神とは別物になってるような予感するけど、そのへんを確かめるためにも見てこないと駄目だなあ。さて何時行こう。

特番、最後までみたら映画の出来が超不安になりました。半分くらいストーリー改変されてそうだなあ。

LL Future に行ってきましたよ

http://ll.jus.or.jp/2008/
今年は奇跡はおきず、きっちり寝すごした。けど、結局後半だけLL Futureに行ってきたので、例によって今の印象を偏見もまじえて垂れ流し。今回は1000人以上収容できる広いホールでの開催でなかなか壮観だった。800人とかいたらしい。そうとう規模がでっかくなってきたような。ほんと、その規模を支えてるスタッフの方々には感謝感謝です。

君ならどう書く?

すでにかなり後半のこのセッションの途中、yuguiさんが解説しはじめるあたりに到着。
今回のネタは「LL Golf」ということで、いくつかのお題をLL言語でGolfしよう、という話だった。いろんな言語のGolfコードが公開&解説されてて結構おもしろかった。
が、このセッションはプロゴルファー浜地先生の指導とコメントが全てだったような気がする。パーサーの不意を付くような細かい規則がでてくることでてくること。よく発見したなあ&よく覚えてるなあ。でもGolfで一番重要なのは、そういう短く書ける構文要素を駆使するアルゴリズムの構成能力だよなあ。プロゴルファーになれる気がしない。
Golfテクニック以外のコメントもおもしろかった。だれか先生のコメントをまとめて欲しい。「classの作りかたくらいはわかります」くらいしか覚えていない。残念。

古い言語、新しい言語

セッションタイトルからはよくわかんなかったけど、要はECMAScript(JavaScriptActionScriptとかtamarinとか) + LLVMなセッションだった。Lispの話もちらっとだけあったか。Lisp=ゴキブリ説。個人的にはセッションのパネラーだった、あろはくんとomoさんが生で見られて満足。あろはくんには隙あらば挨拶しようかなと思ってたけど、結局つかまえられず。

Javascriptで実装したJVM上で、現実的なスピードでテトリス(Applet?)が動くデモがあったりして「どのブラウザでもお手軽に動作するJavaScriptは、現在の機械語的な役割をになっているのでは」というのもやや納得。ただなー、JavaScriptはライブラリが(環境ふくめて)ぜんぜん統一されてないから、ちょっと不信感があるんだよなあ。まだActionScriptのほうがいいような。難しいところか。

LLVMの話とtamarinの話はだいたい聞いたことがある話だったけど、omoさんによるMozillaががんばってるtamarinSpiderMonkeyの統合の現状の話はおもしろかった。

あとあれか、ActionScript3から生成したABCをそのままAVMで動かすよりも、LLVMを経由してABCにした方が高速っていうのがおもしろかった。LLVMのほうでは関数呼びだしとかが静的に決まるC言語になってるから、メソッド呼びだしが動的なActionScriptを対象にするより最適化が効きやすいのでは?って話だったけど、そうだとすればCコードを書いてる人間がある程度最適化してるとも言えるよなー。妄想としてはそこを自動化できるとおもしろそう。例えば、Rubyとかで(evalやクラスの変更はぴたっと止めて)メソッドの呼びだしの解析とかやって、インライン展開とかのがりがりした最適化処理いれたりできんかなあ。

残念だったのは、このセッションは明らかに各パネリストの時間の配分に失敗していたこと。omoさんが結局一言もしゃべらずに終わるのではないかと見ててドキドキした。あ、あと、「ABC?Concurrent Clean?」ってネタはきっちり笑いました。そう思うよなー。


以下、ライトニング・トーク。三つめのセッションにして早くもLT。どんだけ遅刻してるんだ。例によって、おもしろかったのや興味をひかれたのだけ列挙。

Client-side database storageで実際にアプリケーションを作成してみた

ブラウザのクライアントサイドのストレージ(SQLite?)を使うアプリケーションを作ってみた、という話。手法としていちおう押さえておきたいとは思ったけど、実際にどういう環境でどうしてるかを聞きのがしてしまった。あとで調べよう

私は如何にしてNarioを作り、一面をクリアしたか

ライトニングトークでまさかのゲームライブプレイ。ゲームセンターCXかと思った。GCでのかたまり具合いがみれなかったのは残念。なんかパッチがはいってまともに動くようになってたのかな?

「Pit」で救う世界

あいかわらずプレゼンが派手で楽しめた。抜群の安定感。PitっていうのはパスワードとかIDとかを簡単に管理できるようなライブラリらしい。たしかにたまにそういう機能は必要で常にアドホックにやっつけてしまうので、こういうのはいいな。必要な時におもいだそう。

Babel21(仮) LLにLLを埋め込んでみた

発表時には仮称がとれて、Unbabelが正式名称になってた。えーと要は、ある言語の中に違う言語を記述して透過的に使うライブラリ。ゲスト言語のほうはプロセスたちあげて文字列を丸投げしてるだけみたいだけど、「Unbabelプロトコルさえ実装してもらえればどの言語から(このへん記憶あいまい)でも使えます」って言ってたのが気になった。自作言語作るとき、ライブラリの不足を補う足掛りにはよさそう。「Unbabelプロトコル」を調べてみる価値はあるかなあ。どこまでできるんだろ。

ちょっと草植えときますね型言語Grass

知る人ぞ知る、Grass言語の紹介。軟派な見た目とはうらはらに一皮むけば超シンプルなλ計算という硬派。Grass on Railsにも期待。「見た目で釣っといて、formalizmを叩きこむ!」っていうのにおおうけ。いいぞもっとやれ。

超未来言語 Gallina

関数だけでなく型までも第一級である(変数に代入できる)言語Gallinaの紹介。OCaml-Nagoyaの今井さんが去年のCoqに引き続きマニアックな一品をたんたんと説明する姿に感動した。
で、も、あくまで静的検証もできる関数型言語として紹介してたけど、検証するにはさらっと省略してた「証明」ってとこにCoqみたいな論理式を書きまくらないと駄目なんじゃないのかなあ。すでにはてなキーワードにも登録されていて、それを見るとCoqのための言語って書いてあるし。推測してないで使ってみろってことだな。haskellOCamlと連携できるっていってたしちょっと楽しみ。
あーで、たしか静的な検証の話への導入だったと思うけど、「プログラミング言語の未来、っていう話なのに誰もプログラム品質の話をしないのは不思議」的なことをいっててそれは確かにそうだな、と思った。うん。

未来の並列プログラミング言語としての Haskell

これは気になります。次のバージョンアップや次の次のバージョンアップとかでGHCに並列プログラミング向けのライブラリ?が追加されるよ的な話。Haskellびいき者としては、ちゃんとキャッチアップしとかなきゃだめだなあ。それと、Haskellの最適化フェイズをプラグインでさしかえられるようにするプロジェクトをやってる、、って言ってた気がするんだけど、詳細が気になる。これもそのうち調べよう。

その他

最後にボール投げ抽選会があったけど今年は拾えず。休み時間に書籍販売のとこで「実践CommonLisp」を買ったので書籍分はこれで満足しておくことにする。

見逃したセッションの中では「LL でアート」のセッションがよかったらしい。情報をさがさねば。

あと今回も「ブログでは良く知ってるけど御会いしたことない人」数人と(ほんのちょっとだけだけど)お話できて収穫。ここにまともな名前を書いてないので、いつも「はてなで、sshi*1ってIDでブログ書いてるものですが」なんていうまだるっこしい挨拶をするんだけど、皆さんちゃんと反応してくれるのでありがたい。でもさすがに、そろそろ名前書いとくか。どうすっかな。

*1:ここの発音も考えてないので「えす えす えいち あい」とか言っちゃう始末

LL Futureだなあ

今日だるだるだったのと、雨もひどそうなので明日はやめておこうかと思ったがプログラムをみかえしたら行きたくなったので一応行く方向で。
乗り換え経路を確認したりしつつ、こういう時こそストリートビューの出番なのではと思って使ってみる。わかりやすいなーこれ。Googleトランジットとシームレスに使えるのもまたよい。中野駅からだと、線路沿いの道をがんがん進んで、小ホール前を通過して本館にいけばいいのか。もよりのサンクスで昼飯かっとくか。

二度寝で行く気をなくして終了。やっぱり今からいこ。

湖岸の盲点 解答編

http://hannin-a.sakura.ne.jp/
http://d.hatena.ne.jp/anrakuisu_hannin/20080813/1218556825

解答編がでてたよ。
問題は考えたけど、結局ミスの最後の一つが確定しなかったので応募しなかったのでした。

結果はほぼ予想の範囲内。三つのミスはあってた。でも「犯人当て」形式で読むとやっぱりあらは見えちゃうね。気になった度合いが大きかったのを二点だけかいとく。

厳密には解答として求められてたわけじゃないけど、「犬塚の指紋が一番上にある」ってのから、順序を限定するのは無理がある。後からはいった人間が、犬塚の指紋のある場所に「たまたま」さわらなかっただけ、という可能性がつぶしきれてないような。実際、後からはいった人間はいたわけだし。「たまたま」と「偽装」の間にそれほど差があると読みとれなかったせいか。えーとつまり、ちょっと気をつける程度で偽装できてしまうのなら、後からはいった人が、たまたま指紋の上をさわらない可能性も十分考えられる、と読みとってました。

あと、三つめ*1のミスは他と明らかに根拠の強度が違うので、解いてる側としては(変は変だからもしかしたらミスなのかなあとは思うものの)他の三つとあわせて解答するのは躊躇するような。僕は躊躇しました。絶対他にミスを見落していると思ってしまった。残念。


ぐだぐだ書いちゃったけど、やってておもしろかったです。またやりたいなあ。

*1:解答編で提示される順番