2004年 12月 (2)。

Profile. Don't speculate. -- D. J. Bernstein

Last Modified: Tue Dec 21 02:07:23 EST 2004 (12/21, 16:07 JST)

Dec 20 [Mon]


(11:06)
きょう夢の中で判明した新事実: mp3 の "mp" とは、「マッチポンプ」のことである。

それ以上の詳しいことはまだわかっておりません。

http://www.google.com/doodle9.html

(11:43)
もうお昼だけどまだ家から出てません。出たくないんです。いまの外気温 -11℃。 きょうは日中の最高気温が -6℃ らしいんだけど死人でそうだな、きっと。 空はアホみたいに晴れております。てゆうか、アホです。
(14:15)
死にた寒。

てくるで、以下のような「究極の洗濯」を考えた:

  1. わかりやすいコードで、コメント一切なし。(djb 風)
  2. ひどいコードだが、それなりに的を得たコメントが適度にある。
  3. ひどいコードで、コメントの文章もポイントをはずしていて、でもコメントの分量だけは多い。

実際にはこれは究極の洗濯でも何でもない。 オレが選ぶのはかならず 1. に決まっている。 プログラミングの観点からいえば、つねにコードが主要なコミュニケーションのための言葉で、 自然言語はコード言語の使い方がへたな人のための補助手段にすぎない。

(14:36)
Oh, ferociously!
(14:52)
ところで、glyph と graph と -gram はどれも似たような意味 (絵に描いたもの、というような) なのに 語源はちがうんだろうか?? これはいつか調べないと。
(15:22)
Phishing で漏らされる個人情報について。 個人情報をなるべく漏らしたくないユーザのための方策として、 みんな「できるかぎり個人情報を送らない」ようにしているが、じつはまったく逆のアプローチがある、 と、このあいだ spam filter の話をしている matt から聞いた。それは 「みんなで Phishing の主にニセの個人情報を送りまくる」というものだ。 この方法は個人情報を送らないよりもはるかに強力だ。なぜなら送られた側は その個人情報の真偽を判定するすべがない。たぶん頑張れば判定できるだろうが、そのためには サーバの増設なぞよりもはるかに人手とカネがかかる (現在の技術ではとても自動的にはできない)。 この方法は Lycos などがやっている「メールサーバへの物理的な DOS 攻撃」とはちがって、 ネットワークへの負荷はたいしてかけないし、しかも実際に spam を送っている連中ではなく、 その上のレベルの人々 (spammer を雇い、実際に集めたデータを利用する部署) を直接攻撃する効果をもつ。 送られてくる個人情報が本物か偽物か見分けがつかなくなれば、 無差別広告をうつモチベーションそのものがなくなり、そもそも spam をする意味はなくなるからだ。 あったまいいーなあ、と思ったが、ただし、この方法でほんとにうまくいくのかどうかはわかっていない。 個人的には、他にも問題がでてきそうな気がするなあ。
(15:58)
救世軍の季節になったねえ
(16:28)
PNG とはパプアニューギニア (Papua New Guinea) のことである。

だうでもううけど今日no気温は -8℃以上には上がらなかった。すでに外気は下がりはじめている。 ざけんなチクショウ。しかもこれが最高気温ですよ? けさの東京の最低気温より 10℃も低いじゃねーかよ。ざけんなチクショウ。

長岡から来ていた 2人はこの寒さを経験せずに帰ったんだなあ。いーーなあ

もう外に出たくないよ今日は でも外に出ないと帰れない

(16:51)
ほとんど「過去の新聞記事を読む」ことが最近の仕事と化している新山だるが、 いま 1999年ごろの記事を見ているのだが、ブッシュってまだテキサス州知事のころから 金持ちバンザイ的な発言ばっかりしてたんだな。

てくるで、avenge と revenge の違い:

(19:24)
これから凍え死にます。
(20:33)
また今日も生きて帰ってきてしまった。外気温は -11℃であるが、 風がビュービューなので -20℃ぐらいに感じる。風がふくとかなりヤバイです。 とくに毎年のことだが 5av. + 9st. の交差点はおそろしい。防御するものが何もないので、 信号待ちなどにひっかかろうものならマトモに冷気を身体につきさされる。 うぎゃあ〜〜〜! マンハッタンの縦通りはだいたいそうだが、ビルに囲まれているので風の通り道となっているのだ。 あまりに風が強いのでここは「風の谷」と呼ぶことに仕様 (たしか、去年もそう呼んでいたような気がするが)。 それにしてもなぜ寒い日だけ風が強くなるのか? これはなんらかの温度差の関連…。
(21:46)
あしたは一気にあったかくなり、真冬日じゃなくなるらしい。この落差はなんだ!
(01:50)
ひとこと書いておく。

PDF は腐りにも腐ったフォーマットだ!!

氏ね。氏んでしまへ。もう最悪。PDF パーザを書いていて、 どーーーやってもストリームの終わりを検出する方法がわからなかったのだ。 最後に xpdf のソースを見て仕様書とつきあわせてようやく「ファイルの末尾から読まないと間接参照の値が解決できない」 ということがわかったのである。氏ね。こんなら最初っからおとなしくバイナリ一辺倒にすりゃよかったのに、 ヘンに PostScript の影響をうけすぎなんだよ。とにかく氏ね。氏んでしまへ。 これで Adobe のワルモノ度がますます高まったな。

これとくらべると SWF はなんてわかりやすいんだ。天地の差だね! これからは PDF のかわりに全部 Flash で書くことにすりゃあいいのに。pdf2swf もあるしさ…

けんきゅう日誌

週末にしかけておいたスクリプトが終了して、AQUAINT から 約20,000 pairsの類似記事がとれた。ここからランダムに 100記事を抽出して 目かくしテストをする。が、きょうは 50個やったらもう飽きた (これでも 3時間ぐらいかかっている、もうイヤ)。 正解率は 94%。記事レベルではこんなもんだろ。最初の 100語の中に言い換え表現が 含まれている確率は 64% だが、これはさらに洗練できるはず…。 Ralph の照応解決プログラムを使えば、recall を下げずに精度を上げられるかな? ということを明日のミーチイングで聞いてみること。やや問題なのは、 比較したニュース記事が NYTimes, AP Wire および新華電のため、 米国の超ローカルな殺人事件や経済関連の記事は agree せず、落ちてしまっていることだ。 結果として、国際ニュース規模のどでかい合併やら衝突、あるいは政治的記事しか 出てこなくなる。こりゃあ実際には問題のような気もするが、いまのところはコーパスの限界かな。 つうか、記事をみていると anaphora だけでなく cataphora も結構ある。 こんなの解決すんのは大変そー

Dec 19 [Sun]


(10:19)
起きたけどぜんぜにゃる気がないよ
(11:08)
わたくしの趣味は断じてプログラミングなどでは
ありません!!

趣味は料理です。

cook するのはアルゴリズムだけどね。

趣味は編み物です。

weave するのはコードだけどね。

そして 7日目に神は休まれた。

その休息がインデントとなった。

てくるで編集者のことを「編み」と呼んだらカッコいいと思う。

(11:28)
New York Zope and Python Users などとゆう グループがあることをいま知った。でも、ヘボそう。 この街は web 屋が多いから Zope の需要があるのは理解できるのだが、 そもそも新山の理解では Zope ユーザというのは Python プログラマーとは別の人種であって、 かれらはべつに Python が好きで使っているわけではない。 まあ別にそれはそれでいいと思うけど。
(13:03)
ああ、はいはい。 Washington Mews を通ったら、めちゃくちゃかわいい奴がいた。惚れた。 リンゴを両手でもってグズグズ食っている。かわいーーーーー

こいつ

追記: 「アホネン」という名前を見てニヤリとしても誰もオレを責めはしないだろう。

(19:08)
いま買い物から帰ってきたが、メールをみたら、しょ、衝撃の事実発見!!

じつは Mozilla Firefox の「Firefox」というのはキツネなんかではなかった。

レッサーパンダ (red panda) だった (FAQ参照)。

そんだけ。まあこっちのほうがカワイイからいいけど、 これはアライグマじゃんよ!! それにしてもあのアイコンはキツネに見えるがなあ?

さて、これから greeting cards を書かねばならない。 いまから出してもぜったい 24日までには日本に着かないことは確実なのだが、 まあ今年じゅうに着きゃあいいのよ。どのみち、オレにはクリスマスなんて適当なイベントなんだから。

ちなみに、きょうは 18st あたりの、印刷工房とか紙屋さんが集中してる地域があるが、 そこらの店にいいカードをさがしに行ったのだが、なんか気どってんのばっかりで、 あんまり「これは!」というのがなかった。新山が好きなのはむしろコミカルなやつで、 サンタが邪悪な顔して、トナカイに「おい、おまえら、もし今日の走りが jerky (=ギクシャクする) だったら、明日はおまえら全員 jerky (食い物のジャーキー) だかんな!」 といって、トナカイが怯えているようなやつである。基本的にマンガ系のカードなのね。

(22:48)
きょうはかなりカネをつかってしまった。といっても、全部、紙モノなのですが。

あらかじめ衝動買いしようと思って出かけたのだが、決意して出かけたので これは定義上、衝動買いではない。しかし、決意はきょうの朝にふいに起こったので、 衝動決意とは呼べないか? いや、どうでもいい。むしろオレが言いたいのは 「衝動的に」と「発作的に」は意味が似ているんではないかということだ。 でも「衝動的」のほうが多少強そうに感じる。あるいは「発作」というのは すでに (病気などで) ある程度の頻度で起こることがあらかじめ予期されている症状を いうのかもしれない。とすると、オレの場合はある程度時間がたつと、この「衝動買い決意 (=発作)」が 起こるので、これは一定期間のうちにに発作が起きる確率は一定である、つまりこれは ポアソン発作とよぶべきではないかという提案? これだけが言いたかった。それだ。

4時間ぐらい買い物してたことになるなあ。移動時間をのぞけば 3時間くらいか。 回ったのは、Strand → B&N → カード屋 → 紀伊國屋 → カレンダー屋 の順である。 買ったのは本と greetingカードとカレンダーだけなのに、$100以上使っている。 とくに信じがたいのは文庫本 6冊で $62 もしたことだ。 日本の定価の 1.5倍なので日本ならこれは計 4000円ぐらいだが、それでもけっこう高いな。 しかしこういうのは経験上、買いたいと思ったときに買わないと絶対ダメなので、 まず買いたい本をドバドバと取ったあとに「どれを切りどれを残すべきか」で非常に悩む。 どうせオレは文庫本しか買わない (だってハードカバーはアホみたく高いし場所もとるし) ので、 紀伊國屋の奧のほうの文庫コーナーで 1時間ぐらい立ち読みしつつウロウロする。疲れた…。 最後のほうになるともう荷物で肩はこるし腹はへるしで、本選びにさっぱり集中できず。 カードとカレンダーは結局、rockefeller center の地下にあるカード屋やカレンダー専門店が けっきょく一番品ぞろえがよかった。買ったのはみんな「再販モノ」ばかりなので、 どこで買おうが値段は一緒である。来年のカレンダーは OLIVIA にした。 まえに B&N かどこかで見かけてすげー欲しかったのだが、そのご行方不明になっていたが 今日発見したぜウッヒッヒ。

(00:28)
はあ〜〜やっと全部書きおわった。aqua teen 見逃した。

どうえもいいけれろ、Strand の大規模改装はまだつづいている。 地下の本はほとんど 2階にうつってガランとした。あのあやしい狭い階段はもう用をなさなくなり、 かわりに新しいデカい階段がドーンと地下から2階まで通った。エレベータもある。 もうびっくりだね! 芸術関連の本もぜんぶ中2階から 2階に行き、 1階のまえ画集があったあたりはぜんぶ cookbook になった。 てくるで、ハラがへってるときに和食のおかず本を見てはいけない。絶対に。 紀伊國屋でヨダレが 5リットルぐらいたれそうになってあせった。本当だって。

(02:02)
google 検索していてふいに自分のページへのリンクを見つけてしまうと落ち込むね。

Dec 18 [Sat]


(14:31)
Jinyuan が この記事 を簡単に英訳してくれ、 という。英語の新聞ふうに訳すと出だしはこんなもんか?
"Unlike some negative reports from Japanese media, people in TRL are accepting this event with positive attitude," vice president Arimasa Naito, the father of ThinkPad and an IBM fellow researcher, said.
でも疲れるからこの調子ではやらない。 てくるで「ホテンシャス」ってどういう綴りなんだろう? Hortensius が一番近そうだが、日本語メディアはこの手の人名をぜんぶカタカナにしちゃうので 原文をあたるのに苦労するよな。

ThinkPad が売られることについて、まわりの人に意見をきくと ほとんどみんな「悲しい」という。中国人にはあまり聞いてないからわからないけど (追記: TP の大ファンである Jinyuan も「悲しい」といっていたが、かれはもうすこし論理的な 考察をしており「今まで世の中のたいていの PC 事業の買収は失敗に終わっているから」という理由らしい。 Lenovo は中国における Dell みたいな会社だが、すでに ThinkPad のかなりの部分は中国で作られており、 この品質管理がもしこのまま続けられればそんなに見通しは暗くないという)。 IBM の偉大なところは、買ったときの品質だけでなくて メンテナンスも体制がととのっていることだ。 たとえば、5年以上も前のノートの電池がいまだに売っていたりするし、 IBM 以外にも IBM 製品のメンテを専用にやってる会社が米国にはいくつも存在する。 そういう体制って Lenovo にはないだろ。

てくるでぜんぜん関係ないが、さいきん「日本鬼子」の読み方を聞いたぞ。 「鬼子」は「gui tse」と読むそうだ。でも「鬼子」ってなんか日本人のイメージからすると カワイイ感じだよね? ちなみに「小日本 鬼子」で google 検索すると感嘆符「!!!」ばっかり使ってる 力強いページが沢山出てきて笑ってしまう。 てくるで、「日」に使われる「ri」という音は、英語の「r」よりも ずっと弱く、ほとんど舌を離さずに発音したほうがいいということがわかった。 だからどちらかというと「リー」よりも「イー」のように聞こえるのだ。

…しかしどうでもいいが、「小日本」と呼んでけなしているつもりのところが 中国人はわかってない、と思う。日本人にとって「小さきものは、うつくし」なんだって。 むしろオレは「大日本なんとか」という名前をつけた人のセンスを疑うね。

(15:34)
てくるで、予想外にも (?) Lisp を使うことになりそうである。 なぜなら Adam の書いた parsetree → GLARF への変換プログラムが バリバリの CommonLisp だからだ。こいつはコードだけで 1万行はある キチガイ的巨大プログラム (計算部分「だけ」でこれだけ取るってのは、 まちがいなくキチガイ的に複雑なプログラムのひとつ) で、とても Python に移植してる ヒマなんてないからそうするしかない。しかし処理系はどれがいいんだろう。 Lisp は売り物が多くってなあ…。CMUCL、GCL (KCL?) ならオープンだが、もともと Allegro 用に 書かれているのでどれくらい互換性があるのか不明だ。ほかにもタダで バイナリがダウンロードできるのとして LispWorks があるけど、サッパリわからん。 Scheme だったらある程度予想がつくのだけど。これは Lisp の人々に尋くしかないか…
(16:14)
あれま、1日じゅうスクリプトを走らせて半年ぶんの記事しか終ってないよ。 記事はぜんぶで 2年半あるのだが…。ガンバレ!
(19:11)
javascript で自動的にフォームに focus を移す:
function setFocus() {
  if (document.forms[0].username.value == null ||
      document.forms[0].username.value == "") {
    document.forms[0].username.focus();
  } else {
    document.forms[0].password.focus();
  }
}
Gmail からぱくってきたんだけど、こういう細かいところによく気がつくよなあ。

Dec 17 [Fri]


(08:53)
なんとスバラシイタイミング。

さいきん、カタカナ度が異常に侵食している気がしてこわい。 この調子でいくと、約2年後にはオレは 95% 以上の文字をカタカナで書いていそうである。 言々 (ことこと)

やはりオレはこういうアホなこと書いてるほうがずっと楽しいので、そうする。

(09:10)
てくるで、あるメールがとどいだ。
Subject: 田中先生最終講義のご案内
き、きた! しかも題名が「ことばとコンピュータ」だと? なんで今からもう題名が決まってるんだオカシイじゃないか。 だいたいタナカ先生の講義ってのはいつもその場で話が脱線するので、 いちばん脱線する確率の高いタイトル「電総研時代の思い出」とかにしといたほうが安全なような気がする。 まあ、どうせ最終講義ってのは 「30余年この大学に勤めてきましたが (←そんなに長くないはず)、いま思い返してみますと」 というタイプの話になるのだろうが、せっかくだからタナカ先生には最後の最後までLR厨房として 「LR表の接続制約とその展望」とかいう題名で LR法について熱く語ってほしいのだが、 まあこの人はそういうタイプじゃないから無理だろう。

しかしとにかく、一時は病気がちだったらしいので、定年までつつがなく終えられてよかったよかった、 というふうには思う。でも、こーゆうのってむなしいよなあ。べつに何かが「完成した」わけではないんだから。 多くの場合 技術の「研究」というものには完成がない。 まあ、どうせ日本の国立大では教授になったら最後まともに現場の研究に手を出す時間なんてほとんどないから、 完全に「おつとめ」状態だったんだろうけど、たいていの研究は途中で飽きるか、 時代遅れになるか、あるいは時間切れになるかのどれかだ。 で、定年というのは「時間切れ」を非常に感じさせるものであるわけで…。 ところで、たいていの国立大の教授は定年退職したあと私大でもうひと稼ぎする (たぶん、こっちのほうが時給はいい)。これは高校の先生が停年後に予備校教師としてもうひと稼ぎするのに 似ている (少なくとも、新山が通った予備校ではそうだった)。 タナカ先生は再就職どこになるんでしょうね。まあ、どこでもいいけど、 それまたなんかムナシイことに変わりはない。こういう面をみても、やっぱり研究者として大学に勤めるなら 絶対に米国のほうがいいよな、と思ってしまう。定年というのがないし、一度テニュアとっちゃえば、 死ぬか、大学ごとつぶれるか (これはときどきあるらしい)、 自分からやめると言いだすまで続けられるのだ。学生どものやる気も全然違うしさ。ただしこちらの大学では教授にかかる プレッシャーは日本よりずっときついと思うので、ダラダラ続けられる仕事ではないように思うけど (でも、うちの大学の Sigel とかありゃ何なんだ? ダラダラしてるよなあ)。 ま、新山は大学勤めする気はさらさらありませんが。日本でも米国でもね。

そもそも、いまの日本で大学に研究者として勤めたいってのがよくわからん (もっともこれは計算機関連の分野の話であって、物理や数学なら話は違うと思う)。 べつに大して研究に時間がさけるわけでもないし、 いまさら教授がカッコいいなどという、古風なイメージを持っている人もいないだろうし。 まあいいや。

(09:57)
where's george の URL が間違っておりました。おわびして訂正いたします。
(10:06)
(上のつつき) まあ、そう考えると、工学系の研究者とゆうのは大抵むなしいもんだ。 各ステップでの達成感はあっても、最終的にどこか完全な場所にたどりつくことは決してない。 それらはかならず「とりやめ」になるか、追い抜かれるか、とり残されるかのどれかなのだ。

でもまあ、どの職業でも人生そんなもんか。

(10:42)
力みすぎると人格が欠如するよ! 気をつけようね!
(12:52)
ころきあ打余。 あとでかく。

ところでまたショッキングな記事名を発見。

「進路で意見違った」と母親刺殺 (nikkei)
Google News で「少年 逮捕」などを検索 してみるとおもしろい。(いや、別におもしろくもない)

この調子で次に出てきそうな親ごろしの記事名を推測してみよう:

おそろしい世の中だ…。世の中はなんておそろしいんだもう住めない。

(13:43)
なんか、今年入学の PhD 学生がラウンジに集結している。おそらくアルゴリズム基礎 (恐怖!) の試験対策だろう。 こいつぁ必須だからな。2度落としたらもう退学決定だからな。オレも 2年前は必死だった。なつかしいことよ。

てくるで、Word が吐いた HTML を手作業で (おまけに vi で) 直すのは拷問だ。 vimなどではない!

(14:46)
シャックリ止まらn
(15:34)
Python の変: pow がなぜか math でなくグローバルに定義されている (たぶん、歴史的な理由)。 なぜか pow** が等価。
(19:01)
xiaojian に、和服っていくらぐらいするの、と聞かれ、高いよ、 きっと $1,000 じゃ買えないよと答える。かわりに浴衣にしとけ、成田のみやげ屋でも売ってっから、 というと、バスローブを着て外を歩く感覚はヘンだという。いやそれは変だとオレも思うけど… オレだって時々パジャマのままゴミ捨てに行くしさ、それと似たよなもんだよ。 ということを説明しても無駄か。
(19:32)
ぽたぽた
してます
(19:50)
よく考えたら、だれもそんな人はいない
(21:19)
さて問題です。つぎの文字列をふくむ会社名は何でしょう。

google://おいそん/ (240件)

"python" と打とうとして、"oython" と打ってしまった人は絶対、オレ以外にもいるはずた。

(21:56)
google://メルセンヌ素敵/ (1件)

まさに素敵な誤読ですが、先をこされました。

(02:27)
重体。重態。重傷。重症。
(04:08)
あ〜〜〜〜、すぐ終わるかと思っていたら、予想外に時間がかかかkaった。。。 ねむいので何か致命的なポカをしている可能性がある。 が、ネムケを言い訳にしていてはいけない!!

ねる

Dec 16 [Thu]


(13:41)
うー

うー

きみは Wikiquote の Daniel J. Bernstein の項目 を 見たかっ。さまざまな djb 語録がのせられている。

(16:05)
なんかモメていた FireFox の広告がようやく載ったらしい。
(17:51)
なんでも人に聞こうとするな。 結果を得ることが目的なのじゃなくて、「調べようという態度」が重要なのだよ。
(18:41)
いままで時間がなくてできなかったが、ようやく Python-2.4 (ふぃなl) をインストールした。 ついでに Psyco-1.3 が 2.4 対応になったらしいので、それもインストール。 ちなみに新山はまだ PyRex っていじったことないんだけど (そもそも自分でモジュールを書く必要がほとんどない)、 これっていいのかな。あと、新山は古い人間であるので、いまだに sgmllib を使っているが、 どうせいま使ってる形式はほとんど XML なんだからこのさい xml 関係のライブラリを使いはじめることにしよう。
(20:56)
とか言ってるうちにネムくなってきゃちった
(21:13)
とか言ってるうちにムカついてきたのでまた書く。

Python-docs-2.4 をさっさと翻訳してしまわねばならないが、 それ以外にも翻訳すべきかどうか迷っているものがある。

www.opencvs.org 関連 … 手をつけるかどうかかなり迷っている。 てゆうか、やろうと思えばすぐに訳しはじめられるのだが、問題は web だけを翻訳しても (格好をつける以外) 何の役にも立たんということだ。やるなら cvs の manpage も 全部やらねば意味がないのである。同じことは openntpd にもいえるのだが、 これは短かいのでじきにできる予定。でも cvs の方はメチャながそう。 いまのところ cvs コマンドまるごとの man しか入手できていないが、 リリースされたらこれが cvs, cvsd, cvs.conf などに分割されるのだろう。 いずれにしてもながい。誰か元気な日本人が翻訳チームに入ってくれないもんか。 本家 openbsd/ja のほうも停滞してるんだけど。しかしいまさら cvs か?

Python/XML HOWTO … 誰もやんないの?

(00:40)
毎年、この季節になると PATH からおりてすぐの 9st. の住宅街には赤いリボンのついたヤドリギの 「しめ飾り」が並んでいる。通りによって少しずつ趣向を変えるらしく、 となりの 8st. では「しめ飾り」は車道の上につるされる。

てくるで、今日はもうひとつ、おもしろいものを発見した。 けさ、なんとなく財布の中を見てみたら、なにやら 1ドル札の上に 文字が書いてある:

さいしょは誰かの落書きかと思ったが、 なーんと! これは「インターネットを通じて紙幣を追跡しよう」という Where's George? プロジェクト の お札だったのです。だいぶくたびれた紙幣だったので、「なんかいかにも企画倒れしそうな プロジェクトだな…ホントにまだやってんのお?」と 阪神半疑でアクセスしたが、サイトはちゃんとあった。 お札のシリアル番号と入手した住所 (正確には覚えてないが、マンハッタンのどこかのデリであることは確実) を 入力すると、その紙幣がいつ、どこで確認されたかを見ることができる。新山のこの紙幣は いまから 3ヵ月前にフロリダで確認されたのが最後で、平均移動速度は「9マイル/日」と出ていた。 これはおもしろーーーーい! よくこんなこと考えるな。しかもこのサイトでは同じ紙幣を手にした ユーザどうしがメッセージを送れるようになっていて、きょうの午後には この紙幣の前の確認者である John から「おっす」とメールが届いた。ヒマな奴だな〜と思ったが、 こういうヘンテコなつながりは楽しいかもしれない。検索してみると、日本でも www.osatsu.net という同様のプロジェクトがあるらしいが、 こちらはそんなに盛り上がってない模様。こういうバカっぽい試みはたしかにアメリカ人のほうが ノリがよさそうな気がする。 どこぞの国で一日じゅう他人のサイトの引用ばっかりやってる人々よりは、 ずっといいね!

てくるで、おまけにもひとつ写真:

(01:24)
ところで、中国人にきいても「people daily は単なる共産党の宣伝用機関紙だ」としか言われてない 人民日報を、さも重要そうに引用する某日新聞は、いったいアホなのか電波なのかそれとも悪役なの
か?

てくるでゲオルグといえばカントールだろ。

Dec 15 [Wed]


(13:15)
ふんげa。

おっと。誰かさんの好きそうなものが出ましたぜ。

LWN: わずか15行で書かれたP2Pファイル共有ソフト

Ed Felten による tinyp2p がリリースされた。これはわずか 15行のコード (これ自体が「Python わかりにコンテスト」の エントリーになりそうな気配だ) しか必要としない。Ed いわく「peer-to-peer アプリケーションを規制するのはむずかしいということを示すために TinyP2P を書いた。P2P アプリはとても簡単で、人並にスキルのあるプログラマなら 誰でも書くことができるから、これの作成を禁止しようとしても徒労に終わると思う」

オレはこのコードはちっとも好きじゃないぞ。

(追記: 「Perl なら 9行 で書けた!」 とかいってるアホも出てきた、2番煎じはつまらんよ)

しかしこれ、サーバは走るのですが、クライアントを走らせようとすると エラーが出るのだけど、原因を解析するのはめんどくさいので放置。

(14:07)
某サイトにロシア語版があるとは知らなかった。 おまけに pravda.ru から広告がある。というか、 pravda.ru ってとてもまともな新聞とは思えず、 「Xeroxを使うな!」とかいうヘンテコなキャンペーンまであるのだが、 これは本当に共産党時代のプラウダと同じプラウダなのだろうか? 誰かがギャグで同じ名前を使った、というのはありそうな話だけれど。
(16:30)
現在の Google ニュース日本語版「国際」関連の見出し: なんでこれが「国際」に分類されるんだ…。 くだんの記事をみても誤認識するような単語は見当たらず。 ふしぎだぬ。
(00:30)
ニューヨークじゅうの (主に) OSSオタクどもが集結する nytchp.org に行ってきましたのです。 場所は SoHo で、なんだか階段がひっかしがってるアヤしい階段をのぼっていくと ロフトっぽいラウンジだった。 はっきりいって、そんなに盛り上がってない。なんだか、BSD組に支配されていた。 つかれたが、多少酔っぱらっているような気がするが、 問題はまだマンハッタンにいて、これからこのサムい中どうやって 家まで帰りたくねえっっとゆうことだ。でも帰らざるおえない。帰るか。
(02:51)
こんなに遅く帰ってきたのは久しぶりである。 こんな時間で、これだけ寒いと、さすがに襲われることはないだろうと思うが、 やはり夜中はひとけが全然ないのでこわい。ひとつ問題発言をするが、 冬いいのは黒人ホームレスが道端からいなくなることだ。 だって夏はホームレスが道端にいきなり座っていたりするのだが、 黒いので、街灯が暗いから偽装されてしまう。 これがかなりコワイんですよ。去年襲われたときも暗くて黒人がいたのに 気づかなかったのが敗因だったので、道端の人間にはつねに用心しているのだ (ところで、夜に白色の街灯をあんなに 沢山ともしているのは世界じゅうでも日本ぐらいしかないと思う)。 まあそれはいいとして、こんなじゃオレはまた寝坊しちまうのじゃないか? いやもう寝坊確実。しかし明日はとくに予定ないのでいいなあ。 (何が言いたいんだ)

きょうのパーティーでは何人かの知人に会ったが (まあ、向こうからすれば 「ヘンなアジア人」という程度の認識だろうが)、これだけまわりの人数が多いと、 かえって知らない人とはほとんど話さない雰囲気があるよね。O'Reilly や Wiley などいくつかの出版社がブースをだしていて、Lisp組の Heow はきょうは PHP本の著者としてブースに待機していた。わお、表紙に顔写真が! こっちの計算機本は表紙に著者の顔写真がのってるのが多いが、なぜなんだろう。 やっぱりノートン先生のように、「人」で売る、という要素が強いからかな。 でも Lisp に恋焦がれつつ PHP 本を売るって心境はどうなんか。 まあいい。そして友達の Patrick を紹介されたが、これがルビラーな人で、 なんでも Narf という Ruby 用の webアプリフレームワークを作っているのだそうな (でも「あんまり使われてないんでガッカリしている」と本人はいっていた)。 Heow もそうだけどこの辺のアヤしい人々には Ruby 好きが異常に多い。 オレには理解できないが、これは Python があまりにメジャー化してしまっているため、 やはりマイノリティはマイナーなものを好むの法則だろうか。これまた、どうでもいい。 そのあとうだうだと長居して、Heow がようやく出版社ブースから解放されて、 みんなで別のバーに飲みに行ったが (Crosby St. のどっかだ)、せまいのと 音楽がうるさくて何言ってんだかサッパリ理解不能。ただでさえカジュアルな会話に ついていくのは大変なのに、酔っててこんなにうるさきゃ絶対無理だよ。 まあ、みんなお互いよくわかってないで話してたみたいだけど。

Dec 14 [Tue]


(09:27)
そういえば日本で人気の「ニート」って neat って書くんじゃないのな。NEET なのな。 きのう、ホームで電車を待っているときに「そういえば NEAT って何の略だ? Non-Employed Aho Tankobu の略かな? しかし Aho はいいとしても、 T がタンコブというのは良くない。なんにすべきだろう? トンマ? トロロコンブ? (←新山が一方的に苦手とする食品、ヌメヌメがだめなのです、 でも今なら日本食ならたぶん何でもくえると思う) トンビが鷹を生む? まさか鷹の T じゃないだろうな! どうでもいいがトンビから生まれた鷹は Tonbi. T. Smith などとミドルネームに T が入ることになる…のか? トコロテン?? 洞爺湖か? トートロージー?」 などと勝手に爆発していたのであった。そして 5分後ぐらいに、

「そうだ! トカマクの T だ!」

という結論を得たのです。新山はトカマク式核融合がどんなもんだかは まったく知らないが、この名詞にはまえまえから目をつけていたのである。 なぜなら、この響きになぜかクルものがあるから。

NEAT = Non-Employed Aho Tokamak の略。
えいほほっぷくろふとうるまん。
えいほほっぷくろふとうるまん。

(09:40)
まちがえたっ。Tonbi T. Smith じゃなくて Taca T. Smith じゃなええか! もう!
(11:19)
COMPUTER SCIENCE COLLOQUIUM

Friday, December 17, 2004 - 11:30 a.m.
Room 1302 Warren Weaver Hall
251 Mercer Street
New York, NY 10012-1185

Speaker: Dimitris Achlioptas
Microsoft

Title: Applications of Random Matrices in Spectral Computations and
Machine Learning
なんだ MS はこんな研究もやってんのか。

それにしてもうちの植物たちは元気ない。ヘナちょっコ

(11:54)
電話がかかってくる。英語。向こうの人はあきらかに発音が日本人っぽいのだが、英語。 だからこっちも英語。最後まで英語。
(15:28)
きょうのお蛭は忘年会 + お別れパーティ 〜だけど昼間だからランチだよ〜 があった。 となりにいた David とオタクな話をする。いやあ、身近に ATHF のファンを見つけられてうれしいdes。

どうでもいいけど「身近」は「みじか」ではないだろ。「みぢか」だろ。

(16:44)
恐怖のミーチィングが終わりました。いやあ、ことしもACLに出すのは無理そうだなあ。

毎年、この学会に「なんか出そー」と思って準備しているが、いつでも出さずじまいで終わる。 原因: 秋学期の授業がスゴすぎるからだ。でももう今年で取りたいものはホトンド取ったので、 来年はもうすこし暇になる予定。いや暇になってる暇なんかないが。

ふんげぁ!

(18:56)
さてと。負け収め。meow!
(23:32)
負けたけど時間がかかったよ。howl!
(00:47)
いま家についたてくるだ。死ぬほど寒い。-5℃

it's frigging cold you know this is nuovo york you know

…きょうの授業は最終回ということで、なぜか過去にこの授業をうけた OB も参加で ふだんより人数が多かった。このアットホームな雰囲気はなんだ。去年の学生も巻き込んだ ゲーム大会のあと (新山はようやく自分の設計した postoffice 問題の検証を正しくやることができました、 これは、基本的には「盗聴の可能性があるか否か」を有向グラフの最大流量問題に置き換えることで解くのだが、 これをここで説明してもしょうがない)、みんなで近所の Apple (レストランの名前) に飲みに出かける。 ていうか、今日は昼食もココだったのですが。1日に 2回も Apple に来るハメになるとは 思わなかったのですが。学生のひとり Leon は、こないだ ACM で一位をとった台湾人だが、 こいつはホントにホントにパズルやアルゴリズムの類が好きらしく、ほとんどずっと アルゴリズムのことしか喋っていなかった。いわく「この条件式は一般的に成り立つと思う? これをもっと速く計算する方法あるかな?」とか、そんなんばっか。香港人の女の子は アニメオタクだということが判明。「もしかして yusuke ってユウユウハクショの主人公と同じ名前?」 そうだよ! だが漢字は違うよ! (たぶん) といっておく。自慢じゃないが、オレは自分の 「祐介」って名前はけっこう気に入っているのである。 漢字で書いてもそんなに座りが悪くないし、語感もまあまあいい。 英語だと usecase に似ているのが難だけど。そしてそれが原因かどうか知らないが、 新山はひらがなの「ゆ」の字が好きだ…。まあそれはどうでもいいとして、 途中、先生が店の中でクレジットカードをなくすというトラブルに見舞われたが ぶじ発見。このクラスは新山の長い長い長い長い学生生活のなかでも 思い出に残るもののひとつになるだろうなあ。

Dec 13 [Mon]


(11:49)
ネボって大事なミーティングを寝とばしました。死にます。

と、いうか、11:30 からだと思ってたら、11時からだっったんだって! だって今朝目がさめたら 10:30 だったんだから間に合うハズねーじゃねーかよ (逆ギーれ)。 そもそも、そういうことはちゃんとメモ(ここ)に書いたはずなのになあ…と思ったら、 書いてなかった。dmdmjn..

(13:31)
bunbuc
(15:19)
ハラへった。

ろけんろ

(16:17)
さて。日本より 1月近く時差のあるニューヨークでは、もうおはやく新年になりました。

あけおめ〜〜〜〜!

っていうのを誰かどこかの国でやれべいいのに。

ああそうだ。カード買わなきゃ。といっても今年はク

   リス マ


bareacpi
(16:51)
きょうは Graphviz を本格的に使おうと思って、 ドキュメントを印刷し読んでみた。小さなサンプルで動きをつかんだあと、 大々的に 1000ノードぐらいのグラフを生成したら、10分ぐらい止まったあと abort しやがった。こいつの計算時間は指数的に増えやがるのか? デカいグラフに使えなきゃ 意味ないじゃないかくそったれ。思うに、たぶんレイアウトを全自動で…

と書いていたら Ralph がきて… 恐縮 ゆるして

しかし、その瞬間は過ぎ去った。

…たぶんレイアウトを全自動で決めさせるのがよくないのだと 思うんだけど、でも細かく指定しようとするとかえって面倒なんだよね、これ。

きょう買ってきた花は失敗だった。元気がなくてヘンナリしてしまっている。 もともとこの部屋は空気が悪いのだが (別の部屋だと、 同じ日に買ってきた同じ花でもより長活きしている)、これはさすがに元気なさすぎだ。

(17:51)
なんだかよくわかんないが、オレは「ものわかりがよさそうなフリ」ってのが大嫌いである。
(19:29)
寝不足でネムたかったので、ションボリしながらサッサとカエってきてしまった。

直訳:
→ 寝不足で眠たかったので、小掘りしながら昨々と帰ってきて仕舞った。

まったくなあ。なんぜオレはこうも最近カタカナが多くなってきてんだろ (なんぜ → なんで)。これはアメリ化とは別の現象のようの気のする (ような気がする) が、まあいい。まあよくない。

Dec 12 [Sun]


(10:55)
まだレポート終わらず。 週末に python 翻訳をやろうと思ってたけどこの調子じゃムリそうだなー。
(12:38)
いやそれはちがいます。

来学期の授業なに取ろうかなあ…。 今度はイッコだけにするぞ! というか、授業とるとまた「研究やれ」と文句言われそうなのだが、 まちあす先生の Computer Security が非常におもしろそうなんだな。 どうしようか。

来週あたりから (やっと) 本格的にサムくなりそうだね。

(14:48)
しかし、すべての取りたい授業を取ってしまうことを恐れている。 それはもしかして、おいしい料理の最後のひとくちを口に入れてしまうのと 同じたぐいの恐怖ではないca?

今日の slashdot。 アイデアの年。音でキーボードのどのキーを打っているか判定する? 地雷を探知する植物? 濡れない水??

(17:10)
いま発見 (はっけそ) したガーソな事実:
>>> a=[1,2,3]
>>> a[:None]
[1, 2, 3]

なんぜだろう?? None はべつに int 型に変換できるわけでもないのにな…?

(19:16)
あーーー〜〜〜〜っ

いま急に!!

親子どん食いたい
親子どん食いたい
親子どん食いたい

く、なった。

どうすれべいい? (typ0)

どうすればできるようになる?

えぇと … (動的プランニング) まずご飯は昨日ののこりを使えばよいし、タマゴはあるし、 タマネギあるし、味付けはめんつゆ使っちゃえばいいし、 あと、ないのは鶏肉だ! よって帰りに鶏肉かうこと!!

異常終了

でもそれ親子じゃない
親子じゃない
真の親子じゃないわ!!

ende

(20:17)
いっつもいっつも appreciate と appropriate のつづりを間違える。いっつもいっつも。 どっちも -iate だっつうの!! じつは英語には -iate で終わる単語は多いが -eate で終わる単語は (メジャーなのは) create と laureate しかない。だからかならずいつも "iate で終わる" という クセをつけるべきである。まったくもう。
(23:00)
いま帰ってきた。これからオヤコドナーーー!! (親子丼を作る人、の意)

「親子ドンを食いたい」といってからすでにかれこれ 4時間近くも経過してることに留意せよ。 この間、新山はお茶しか飲んでいない。かくのごとき空腹に耐えるのは人生の中でも時間の問題だ。

(23:59)
片付けおわった。林檎食うか。

なーんか、味がいまいちだなあ。今回は贖罪がまずかったとはそんなに思わないのだが、 やっぱりみりんを使わずに砂糖もなかったので人工甘味料を使ったのがまずかっ

たのか?

(02:50)
まだあやふやだけどもう寝るぞ くんにャろ

Dec 11 [Sat]


(10:11)
またおかしな夢を見た。 母親が、ヘンテコな絵を描いて (なんか「布団がzzz…と寝ている」という絵) うちの市のなんとかいうコンテストに応募したところ、入選してその絵が市のゴミ焼却所の 壁だかエントツだかにデカデカと描かれて恥ずかしかった、という夢。そんなん、応募すんなよ…。 しかしいかにもうちの母のやりそうなことなのでおかしい。電波は遺伝する、ということだろう。

todo: くりすますかーど買わなきゃ。

(11:32)
donyori曇りの日だ。とりあえずコインランドリーが空いてるうちに 洗濯物を仕かけ (どうもランドリーの場合、「洗濯する」というよりも 「仕かける」という表現のほうがぴったりくるような気がする)、そのあと ゆうべ作っておいたみそ汁をあっためる (昨日はソバ食だったんだけど、 なぜかもうダイコンが死亡時期近かったので思わずみそ汁を作っちゃったのよ。 それにしてもなぜおネエ言葉か!)。その中に生卵をひとつパッコリ落として飲む。 ちゃんとゲル化するまで熱しましたよ。それから今日やるべき事をイメージする…。 ええと、今日はまず宿題のプログラミングいっこやんなきゃ。今日中には仕上げんないとな。 それから月曜日に Ralph に出すレポートを…これは今日中に仕上がるかどうか疑問だけど… 書く。あるいは少なくとも書こうとする。しかしこの部屋であんまり研究っぽい仕事を やりたくないので、今日もオフィスまで出なきゃだめかな。土曜日ともなれば なんらかのアトラクションがあってもいいような気がするのだが、寒くなってからこのところ あんまり出歩いていない。ああそういえば本屋へ行きたいんだった…。あ、そーだ。 今年ことはマトモなコートを買おうと思ってたんだけど、なんか今の時期どこも 込んでそうでなあ。あ、それから、化粧品買えって頼まれたんだ。双方の用事は どちらも Century21 (WTC 跡地のとなりにあるので、うちから電車で 15分ちょっと) へいけば いっぺんに済んじゃうんだけど、去年年末商戦どきにあそこへうっかり入りこんで 人混みに押しつぶされそうになって以来、コワくてしかたないのだ。

そして、みそ汁だけで朝食が終わりそうな気配。

(11:57)
ああそうか、何をいっても頭の中で自動的に変換されてしまうんですね。 そういう人にとっては。

てくるで、いまは NetBSD も CD-ROM からブートできるんだ。 時代は変わったなあ。

(14:52)
もしあなたが気にするのであれば。(if you care)

かねてからの懸案であった、あやしい挙動のトースターを分解清掃した。 開けてビックリ、ホントにアホみたいに簡単な仕組みだった。 どうかトースターは今後ともインターネット対応にはならないでほしい。 しかしさすがに 3年も使っているとパンくずが中にたまっていたので、 掃除機をとりだして吸引し、クリーナーでふく。 たかがトースターなのにけっこう汚れるもんだな。 ついでなので部屋もざっと掃除する。

家電製品を分解するというのはあんまり新山はやらないが (中学生のときにウォークマンを分解して元に戻んなくなったトラウマがあるので)、 たまにやるといろいろ勉強になる。 いままで、パンが焼き上がってくると自動的に「がったん」ってなるのが 一体どういう仕組みなのかと思っていたが、これは電磁石を使っていることがわかった。 トースター内の温度は金属製の棒を通して電磁石のコイルに伝わる (そして、温度調節のツマミはこの伝導の面積を調整しているだけだった)。 たぶんこのコイルには負の温度特性をもつ金属が使われていて、トースターの温度が 上がるにつれてコイルの抵抗値が下がり、電磁石として通電して「止め金」をひっぱって レバーを解放するのだと思う。よくできてるよなあ。

新山はキカイ類は苦手なので、こういうのには感心するばっかりです。

しかし、文句があるのだが、どのみち掃除するんだから、 もうちょっと簡単に分解/組み立てできるように設計しておいてもいいと思う。 このへんに対する感覚はソフトウェアと一緒だ。道具はつねにできるかぎり一般ユーザが手入れできるように 設計すべきであり、そのためにはなるべく単純な構造にしておかねばならないのである。 使いやすさとかインターフェイスの面からみた道具のデザインについてはドナルド・ノーマンとか、 佐貫亦男とかがすでに考察しているが (本当は学術的な研究をしている人はもっといるだろうが、 とりあえずオレはこの 2人読んだらもういいやと思った)、ユーザによるメンテナンスという観点からみた デザインについてはどうなのか。暮らしの手帖はいつになったらフリーソフトの性能比較をするようになるのか。

(16:09)
わお、なんでみんなそんなに政治の話が好きなんだ。やってらんねぇ
(19:31)
えーっとね。

頭がふやけてきたのでパソコンをもって散歩した。 うちの近くはすさんだ地域のため、こういう「ちょっと気分癲癇したい」ってなときに 気軽に入れる喫茶店のようなものがないのですよ。白人の住んでるとこなら、 かならず Starbucks の 1つや 2つあるのだが、JSQ 周辺にはない。 かといってただそのためだけに電車に乗るのもばからしいので、駅前の Dunkin Donuts に 入ってレポートの続きを書く。コーヒーあまい。1時間ちょっと粘って帰ってくる。 あそこでパソコンをいじっていると姿勢が非常に悪くなる。そのごスーパーで買い物。 プログラムはまだできてない。やばいなあ、早くやんなきゃ。

(20:30)
忘れていたので、忘れないうちに LL4 のレポート。 概要は http://ll4.csail.mit.edu/Abstracts.html。 スライドは http://ll4.csail.mit.edu/slides/。 写真はこっちです。

この日はみんなホテルでのろのろと朝食をとって、それから地下鉄で MIT についたら最初の発表に遅刻しそうになった。 Boston にくるのは LL のときしかないので、毎回 Boston はいつも週末につくのだ…。だから平日この街が どんな様子であるかは新山はいまだに知らない。Kendall Sq. でおりる。NY よりサムい。

まずしょっぱなの発表は「自然言語をプログラミング言語として使う」という、 どっかで聞いたような話なのだが、「自然言語をプログラミング言語として使うには こんなことをやる必要がありますよ」というだけで、何がどうなってるのか、 ほどんどわからんかった。はっきりいって、ただのほら話のように見える。 いちおう実装らしきものはあるみたいだけど、 なんやら、「ストーリーを入力するとクラスのテンプレートを作ってくれる」というものらしいのだが、 それで何がうれしいのか? このスピーカ (hugo) によれば、自然言語ではたんなる名詞でも いろいろな「活用」があり、その形態は聴き手のなかで変化する。たとえば「bar がある」などという 文章に "bar" という単語がただ現れただけでは、これは記号 (atom) にすぎないが、 「bar にはスツールがある」という文章では bar はいまやコンテナ (配列) として聴き手のなかで 認識されるようになるし、「bar は開店・閉店する」という文章なら bar はオブジェクト (開店・閉店というメソッドをもつ) として扱われるようになる、という。だから? いずれにせよ、自然言語をプログラミング言語として扱ったときのメリットがちっとも見えてこない。 名詞(句) = オブジェクト、動詞 = 関数(あるいは手続き) という類推は すでに Iverson によって APL という形で実現されているが、Iverson は賢明にも 自然言語そのものをプログラミング言語として使おうとはしなかった (し、60年代後半の 技術でそれをやるのは限界があった)。もちろん、対象とするプログラムの種類を非常に限れば あるいは役にたつものもできるかもしれないが、しょせんそれはマクロとおなじたぐいのものである。 一般的なプログラミングを、自然言語によって行うというのはいまだに新山はかなり懐疑的だ。 そもそも自然言語は手続き的なことをいうのに向いていない。「それを代入しろ」程度なら まだいいが、フィボナッチ数列 (またでました!) を手続き的に求めるような指令を 日本語で書いたらどうなるのだ… 「ある数とその前の数をたして次の数をつくるように 1から順に数列を構築していけ」かな? しかしここでもやや宣言的な物言い (「…になるように〜しろ」) を含んでいる。 ひとつの可能性としてあるのは、検証ツールとしての自然言語の利用である。 つまりプログラムが満たすべき条件を (宣言的に) 日本語で記述するとか、 プログラムを日本語にいかに変換して読みやすくするとか、とかだ。これについてはやや考えるところもあるのでまたあとで。

さておつぎは IronPython。待ってました。x86 アセンブリの話が出てきたりして かなりオタクな内容のトークだったが、ようするに IronPython 高速化のヒミツというのは 「頻出するメソッド呼び出しの組み合わせを いっこのメソッドとしてまとめてしまう」ことのようだ。 たとえば if a == b: を厳密な Python の式として扱おうとすると、 まず「メソッド a.__eq__(b) を呼び出して、その返り値を boolean 型に型変換して、 それから判定する」というぐあいだったのが、かれの実装ではこの 2つをいっぺんにやるようなメソッド EqualTrue のようなものを生成する。こうすると CLR のコンパイラが最適化しやすい形になるらしい。 かれの理屈によれば、Python を .NET 上に実装するとなにがいいかというと、MS の CLR はかなりバイトコードの 最適化が研究されており (詳しくは知らないが、MS はこの分野で世界でも数えるほどの技術者を 大量に仕入れているはずだ、SQL server もそうだが、かれらは金をつんで世界じゅうから いちばん優秀な技術者をかき集めているらしい)、Python そのものが最適化されなくても、CLR の最適化が進歩すれば 勝手に Python も速くなるからいいんだそうな。おまけに C# 用の IDE で すでに Python のコードがデバッグできるようになってしまっており、かれは実際に デモを動かしてみせていた。 それまで .NET は C# や VB などの、静的に型付けされた言語にのみ向いており、 動的な型の言語には不向きであると考えられていた (そういう批評は見たことがある)。 で、スピーカの Jim Hugunin の功績というのは .NET が dynamic typed なプログラミング言語にも 使えるということを証明したことにある。で、かれはなんと .NET チームの一員としていま MS で働いているのだが、 (もともとこのワークショップは昔から MS Research が協賛だし -- タダ飯くえるのも MS のおかげだね!)、 これは IronPython の功績が認められたためらしい。Dynamic Typing された 言語をいかに .NET で高速で動かすかという仕事をやっているそうだ。 MS は Python をサポートすることをやや本気で考えているらしく、もしかすると これは MS からリリースされる初のオープンソースな言語になるかもしれないという。 トークそのものよりこっちのほうがおどろきな話であった。でも、かれは Jython の 主要開発者でもあるのだが、かれが MS にいったら、もう Java なんてやらないだろうから、 Jython の開発は止まっちゃうんじゃないかね? IDE にしても、MS VisualStudio が もし本当に Python をサポートしたら、いまある競合製品 (商用 Python IDE) はひとたまりもない。 つくづく MS のやることは罪ぶかい。

kakunotukareta...

ぞんぞん関係ないが、きのう表へでたらジングルベルのサビをクラクションで演奏してる (--- --- --−-−) アホなトラックがいた。そういえばこの部分っておなじ音程が多いもんな、 クラクシぉンでやるのにいいかもな。でもアホだけど。

(01:47)
ごえ〜〜やっとプログラミング終わった〜もう死にそう…

(つづき) で、IronPython のつぎは Scheme で巨大な望遠鏡の制御をやるという LispNYC の連中が 手をたたいて喜んでたやつ。ようするに MzScheme を組み込みに使いましたって話だが、 Scheme がこの手の組み込み用言語として向いてるのは同意する (なんにでも Python 使えとはいいませんがな)。ただ、この手のアプリケーションで 言語に期待されてるのは「お手軽性」だと思うんで、Perl がもし Scheme 並に組み込みが 容易になっていたらこの手のやつで使われるのは Perl だったかもしれない。 ただ、数値計算が入っているとなるとやっぱり Scheme のほうがいいかな。

で、おつぎは Marmalade とゆー、Squeak 上に実装した「目で見てさわれる言語」なのだが、 ようするにこれは UML のクラス図みたいなのを直接いじってプログラミングしていく、 というもので、アイデア自体は、なーんだ、という程度。というか Squeak の連中ならとっくにそんなの 最初から実装してるかと思ったら、まだやってなかったの? しかしこのトークで むしろクールだったのはその実行環境 Zest のほうにある。これは「言語の実行環境と Wiki が合わさっている」 というキテレツなもので、通常の Wiki のごとく誰もが Marmalade のクラス図をぺたぺた 貼りつけてそのページ上で実行可能なコードが書ける! というものだった。 これは…いいかもしれない。Marmalade のオブジェクトは可視化もできるので、 同一ページ上にいくつかのオブジェクトを置いておき、それらの関係を理解させるにも役立つ。 とくにいいと思ったのは、これがデザインパターンのリポジトリとして役立つ可能性があるからである。 新しいパターンができたら、みんなで Wiki で共有するのだが、c2.com なんかのページと違ってこの場合は 「実際に動かせる Wiki」なのだ! …しかし新山はデザインパターンの共有というのをほとんど信用してないうえに 専用のブラウザでないと見れない (とーぜん、Zest は Squeak で動く) ために、結局ダメだね。 SmallTalk でキライなのは奴らが開発環境をふくめて何もかもいっさいがっさいをオブジェクト指向の 枠内におさめたがるところだ。統一性の観点からいえばたしかにその考えは理想的だが、オレは そこまでして宗教を実践する必要はないと思う。

で、つぎは何だ。ELIZA か。これは lisp とはなんの関係もない (が、名前はたしかに あの ELIZA からとっている)。ML っぽい関数型言語なのだが、 関数をいくつかのタイプ (generator, filter, concentrator, transformer) に分類し、 これらをシェルスクリプト風に f | g などと書けるあたりがなかなか変態っぽくて 気にいった。

  1. generator ... 無から順列を生成するもの (Python の generators とほとんど同じと考えてよい)。
  2. filter ... 順列を受けとり、順列を生成するもの (UNIX のフィルタ類と同様)。
  3. concentrator ... 複数の順列を受けとるもの。
  4. transformer ... ひとつの順列から複数の順列へ分岐させるもの。
3. と 4. のようなものは UNIX では技術的に可能だが、シェルでは記述不可能。 これでいろいろ計算ができるってのは lazy だし、しかも Parrot 上で動くってのは かなりおもしろそうなのだが、残念ながらコンパイラはまだ完成してないらしいのだ…。 それに、発表の途中で新山はネムくてまいった。

そのつぎの REST ってのは、継続ベースの web アプリサーバらしい。最近こういうの流行ってんのかな。 もともと ViaWeb もそうなので Lisp 組はこれを語らせだすとなかなかアツいのだが、 あまり新山は興味なかったが、その中で世にあるいろんな継続ベースのアプリケーションサーバを列挙してる スライドがあって、Python にも Impostor という ものがあるというのを知ったのはおろどきだった。yield 使ってんのかしらん?

もうねむいので適当に。最後から 2番目の発表は Gooze とゆー、これまた Lisp ライクな言語だった。 ただし通常のデータではなく「ストリーム」を扱うことができるというもので、 ビデオクリップや音をデータ型としてとることができ、それに演算をほどこすことができる (もともと、そういう映像処理のために作ったらしい)。 デモも派手なんでみんな喜んでいたけど、言語としてはそう目新しくもなし。 たぶんデータフローモデルで実装してんだろうが、学術的にはここに Aspect oriented なんかの 話を入れるときっと深みがでる (ように見せられる)。それより最後の発表がおもしろかった。 Frink という言語なのだが、 プログラミング言語というよりはむしろ「電卓言語」って感じである。あらゆる数値が「単位」を属性として もっていて、物理量の計算に向いているのだ。というか、それに特化してつくられた言語らしい。 たとえば「12月12日 午前2時31分 + 600000秒」とか、「100ワット × 2分 ÷ 5キログラム」とかいった計算ができる。 これは言語がどうとかいうよりも、純粋に計算機として便利そうで、ぜひインストールしたくなった。 組み込みの単位や定数の数がハンパじゃなく多い。たとえば各国の単位や物理定数がほとんど入ってるし、 「1960年の 1ドル / いま現在の 1ドル」とかいう定数はインターネットに接続して実際に「いまの値」を求めるように なっている。おまけにプレゼンもかなりおもしろかった。 これを作った動機というのが笑える。あるとき、彼 (Alan) の友達が、かれに次のようなメールを おくりつけてきたという: 「もし誰かが 6年と9ヵ月のあいだ連続してオナラをこき続けたら、そのガスのエネルギーは 原爆一個分に相当するにちがいない」 で、この人は「そんなバカな」と思って、それを検証するために この言語を作ったというのだ (残念ながらこの命題は真だったらしいが)。 このおっさん、かなりの凝り性らしい。最後に司会者のおじさんが「オナラのすごさを我々に思い知らせてくれて ありがとうございました」とかいってまたウケを狙っていたが、なんにせよいいプレゼンをごちそうさまでした。

(03:21)
こんなんじゃ明日も寝坊して悪循環だと思はない??

もう眠いのでこのさいだからこないだ考えたことも書くぞ。 新山がなぜ Ruby や SmallTalk などの背景にある「強オブジェクト指向」思想がキライなのかという話。

たいていの科学には理論がある。数学や物理には体系的ともいえる理論があり、 とくに物理では「世界をただひとつの方程式で記述する」なんていう言葉があるくらい、 世界が厳密な法則に従って動いているというイメージがある。

で、ようするに、オブジェクト指向の幻想が目指すものは、これなんだと思う。 「世の中のモノはすべてオブジェクトで…」というようなアホな議論は、ソフトウェアを、ひいては 世界でおこりうるすべての現象をオブジェクト指向の枠組みで、統一的に、理論的に、とらえられるかもしれない、 という子供っぽい夢からきている。

これはまさに新興宗教の教義の必要事項を満たしていると思う。 中途半端になじみやすく、慣れるのも簡単な概念で、さらにやや「理論っぽく」聞こえる。 おまけに実際に世界を支配してそうに見える…。 高校生ぐらいがはまるのにはもってこい。ここが重要なのだろう。しかし、いい歳になって、 そういうのをありがたがる計算機屋ってのは、まあ、はっきりいって、 学術コンプレックスというか、悪あがきのようなものがあるのだと思うが、 新山にとって計算機屋は絶対にそんな「高尚な仕事」にはなれないというか、 なるべきじゃないと思う。なぜならそれは、いずれ料理のようなものにならざるを得ないんだから。 それは理屈うんぬんの前にまず訓練の世界で、そもそも国語だっていまだに どうすればいい文章が書ける人間をつくれるかわかってないんだから、 べつにソフトウェアが理屈でとらえられなくてもしょうがない。

なに言ってんだっけ?

あ、そうだ。 新山が Ruby を嫌いなのは、ライブラリがヘボいとか、よく落ちるとか、 文字コードの扱いがださいとか、 web がださいとか、日本でしか使われてないとか、そういうことではない。 一般にマイナーな言語がヘボいのは当然で、そういうことを理由に 評価すんのはフェアじゃないと思う。 理由はもっと根本的なことなのだ。 ソフトウェアのことがよくわかっていない初心者に、 上のような正しくない幻想 (「間違った」幻想とはいえない、 そもそも否定も証明もできないというべきだ) を押しつけるのは、 とうてい知的に誠実とはいいがたい。 まさに新興宗教の教義を押しつけるのと同じやり方に思える。

smalltalk も同じだ。でも、違うのは SmallTalk は、まだ OOP の宇宙を それなりに「かっこよく見せようとしている」ところにある。 Ruby の描く宇宙はみにくい。非常に。無邪気な人をつかまえて そこまで趣味を悪化させる必要もないと思う。空中浮遊。

もう眠すぎてダメですね。

(追記 dec12: どんなプログラミング言語にも特定のバイアスはあるので、 結局は何をやったところで偏向する。しかし、オブジェクト指向は最初に 偏向すべき考え方とは思わない)


Yusuke Shinyama