朝から広尾に移動。東京神殿に参入。宗教的なデートだ。 神殿では知り合いに何人も会う。
昼食にはパスタを、と思ったのだが、入ろうと思っていたイタリア料理店がカレー屋に変わっていた。 勢いでそのままカレーにする。
午後は恵比寿経由で東京駅周辺に。デパートや地下街やブックセンターに。 別に東京でしかできないことはしなかったけど、「東京の雰囲気」を感じれたからよいのだそうだ。 まあ、彼女は滅多に旅行とかしないからねえ。
あ、東京に来たらグラコロ食べようと思ってたんだっけ。 忘れてた。
7時55分のANA便で米子へ(機体はA-320、初めて乗った)。 米子の実家で子供たちと合流して、玉造へ帰る。
先日も書いたように書き直し。 結局、「自前でDIコンテナを書く」という荒技に。
しかし、DIコンテナの基本部分がわずか20行ほどで書けてしまうという事実に、 我ながら驚愕する。
「Why Microsoft can Blow-Off with C#?」によると、成功する言語の設計者にはヒゲが生えている(だから、C#はダメ)らしい。Java、C, C++, PerlはOK。
そこには、
The authors of others script languages have no moustaches. Ruby and the Python is better, than Perl, but meet where less often than Perl. There is, however, a hope for Van Rossum, suddenly will grow a beard. It is not necessary to count on Mr. Matsumoto - at Japanese the beard grows badly.
とあり、ご丁寧に私の写真まで載せている。これは島大で撮ったものだな
「日本人にはヒゲがあまりない」だと。決め付けるなっ。
悔しいので、古い写真を引っ張り出してきた。 これは長女が生まれる前だから、Rubyを作りはじめるよりは前の写真だけど、 作りはじめてからも数回伸ばしたことがある。
これでどうだ。
追記:
「プログラミング言語の設計者に女性はいないのでしょうか」とのことだが、上記のページにもあるGrace Hopper女史(COBOL開発者)は女性だし、 Barbara Liskov(CLU)も女性だ。もちろん、ヒゲはない。
Child: Father, we have drinking problem in our ward.
Father: Really? I didn't know that.
Child: Our water fountain is broken.
教会のWater Fountain(冷水が出るやつだ)が、ずっと壊れていたのだった。 給水管が腐食して、外れてしまったのだ。困ったものだ。
が、任期を終えて帰ってきた父が直してくれるという。 教会で待ち合わせて、修理してもらった。
うちの父はなんでも直せる。伝道中も重宝されたらしい。 お風呂のリフォームもこなしたといってたな。 実家も二部屋ぐらい自分で工事して増やしてたし。
こういう才能を受け継がなかったのが悔やまれる。
4840231524
で、その時に母から本を預かった。 『4840230668』、 『4840231524』。 末の弟から長女へ貸してあげることになっていたのだそうだ。 あの二人、けっこう趣味が合うらしい。
これってアレですか、いわゆるひとつのライトノベルってやつ?
しかし、なにげに読んだらおもしろかった。若い頃を思い出すわ。 タイトルから想像される内容と違って、田村くんの一人称視点であった。 なんだか男性が喜ぶシチュエーションなのだが、作者は女性のように見える名前だ。 男心を理解しているのか、実はわくわくする要素に男女差はそれほどないのか。
長女が読んだら感想を聞いてみよう。
進まない。本当は今日が〆切なんだが、終わらなかった。 明日にはなんとか。
明日の発表のためにスライド書き。 ちょっと遅いだろうと言う気もする。
東京へ移動。 某企業との合同懇親会。楽しかった。
RubyConfの時に受けたインタビューがポッドキャストとして公開。 恥ずかしい。
Lispから見た「スクリプト言語」への苦言(?)。 だいぶ感情的になっておられます。
で、ですね、興味深いんで、ちょっと分析してみたい*1。
まず、どうやらこの方(えーと、KURODAさんですね)をもっとも怒らせているのは どうやら私らしい。というのも、
スクリプト言語ってのがあります。つづりが P や R で始まるあれです。
色々調べてみると、スクリプト言語の連中というのは、 何かといえば Lisp を引合いに出すのが常套になっているようです。
Lisp の不幸の1つに、
Lisp を使わない奴に限って Lisp について語りたがるというのがあるんですが、今回もう1つ加わったのは、
Lisp を知らない奴に限って Lisp を他のもの、なかでも自分の自慰行為の結果と比べたがる
っておっしゃっているが、
という条件に一番合致するのは、私しか思いつかない。
いや、怒らせるつもりはなかったんだけどなあ。しゃれですよ、しゃれ。
まず、第一に私はLispを知らないわけではない。 もちろん、職業的にCommon Lispでプログラムしたことがあるわけでないから、 第一線の方と比較すればまだまだのは当然だが、 Lispについて語る資格がないほど知らないわけではないと思う。
いや、ないのかな。思想や歴史の概要ならともかく、 その歴史を体験したわけでもないし、 Common Lispの仕様のすべてを把握しているわけじゃないし。 今日もCommon LispでSymbolに対して適用可能な操作のリストを見つけようとして 四苦八苦したもんな。
「(Common) Lispについて精通した人でないとLispを語る資格がない」っていうことなのかもしれないが、 そうだとすると、まあ、ずいぶんと敷居の高い言語であるなあとは思う。
私のどの発言がどんな「トンデモ」に感じられたかは、 ここではわからないが、私自身はいつもLispという言語に対して 「リスペクト」しているつもりである。 仮に少々揶揄することはあるにしても、それは親しみを込めた発言のはずだ。
私のLispに関する発言は、基本的には以下に分類される。
最初のものは、つまり、「Lispのこんなところがすばらしい」ということだ。 ほめているわけだから、非難されるいわれはない。 あるいは「お前なんかから言われたくはない」ってのはあるかもしれないけど。
次のところは、要するに「Lispのあるところは(ある種のスクリプト言語には)不要だ」 ということだ。これは 「Lisp の良いとこを取ろうと思ったら最低 ANSI にあるものは全部入れとかないといけない」という発言と対立しているから、KURODAさんとは意見を異にしている。
もちろん、これは「Lispの良いとこ」の定義によるわけだが、 KURODAさんの場合にはその定義は明確である。「最低ANSIにあるものは全部入れとかないといけない」という発言からは「Lispの良さとはCommon Lispであることと同値である」ことが引き出せる。疑問の余地はない。
おそらくKURODAさんにとってはそうなのであろう。そこは否定しない。
しかし、おそらく不幸なことに、すべての人がKURODAさんに賛成するかと言うと そうではなさそうだ。しかも、より不幸なことに、 KURODAさんに賛成する感性を持つ人は、業界を見まわす限り、かなり少数派のようだ。
そのような少数派の人の持つ自意識を端的に表現した引用があった。
(Common) Lisp has been the language from which inferior people picked good ideas when they could not handle the full language. -- Erik Naggum
(Common) Lispは、真の言語を取り扱えない劣った人々がアイディアを取り込んでくる言語である
その通り。 我々、「劣った人々」はLispで実験され実証された優れたアイディアを 長年言語に取り込んできた。Lispは言語機能のテストベッドとして非常に優れている。
しかし、先鋭的なLispな人にとって計算外なことは、 業界の人間の大多数がいわゆる「劣った人間」で、 Common Lispには堪えられない、あるいは必要としていない、 という「事実」だ。
そして、私を含む大多数の「普通の人々」は、 Lispがいくら優れた言語でも、Lisp以外の「劣った言語」のユーザを 「劣った人々」と公言するような「Lisp選民」とのお付き合いには 抵抗がある。
今までLispという言語について語ったことはあったけれども、 LispコミュニティやLispユーザの精神性について言及したことはなかった(と思う)。 しかし、今回のことで「Lispが広まらないのには括弧以外の理由があるのかもね」と 強く感じた次第である。
参考: comp.lang.lisp: how I lost my faith
Erann Gatが、 Googleに移ってLispへの「信仰」を失い、Pythonに移行したという話。 「Lispじゃなきゃ」というのが思いこみであったとの告白。
あと、KURODAさんは「言語仕様を小さくまとめてライブラリで言語をリッチにしていこう」という考えを「残念ながらこれは端的に間違ってます」と簡単に断言しておられるが、 もしかしたら、これも同様に「思いこみ」から来る結論かもしれない。 Common Lispの著者の一人でもあるGuy SteeleのFortressは、 まさにそのアイディアを具現化しようとしてるのだから。
いや、KURODAさんがglsよりも正しい可能性は否定できないけど。
追記
「ある言語のユーザーの中に、自分にとって不快な言動をする人がいる」ということを言語自体や言語のユーザー全体をけなす理由にするのは反感の元」という指摘が。
また、こういう指摘も
言語Xのユーザーは、特に有名なユーザーは、同じ言語Xのユーザーから言語Xを使わないことを理由になじられたりはしません。だから「言語Xを使わないことをなじる言語Xのユーザー」がいないと感じてしまうんでしょうか。
まあ、もっともである。が、少々補足したい。
まず、誤解されないために、私が以下のように思っていることを明記したい
私自身はKURODAさんの選民意識は理解できるし、 さほど不快でもない。論理がおかしいとは思うけど。 おまけにこれでますます「普通の人々」がLispから離れちゃうんじゃないかと危惧するけど。
さて、Ruby厨についてであるが、 そういう人がいるという話は聞いている。 まさに上記の理由により私はあまりお目にかかったことはないけど、 存在は認識している。
しかし、少なくともその多くは選民意識によるものではない。 っていうか、Lispのようなある意味特殊なポジションにいる言語と違って、 大衆に受け入れられやすい言語のひとつである(しかも、類似ポジションの言語が複数ある) Rubyに対して「選民意識」を感じたとしたら、 それは単なる無知から来るものであろう。
*1 なんてことすると、ますます怒らせちゃうかも。
笹田くんとふたりで某ウェブマガジンの取材を受ける。
リリース間近の1.9の話題ということだが、 止められないので、あちこちに寄り道しながら適当に話をする。 途中で1.9の仕様議論が始まったりして。
取材終了後、昼食も一緒に食べ、 大変楽しい時間を過ごさせてもらったが、 うっかり時間を忘れてしまって、 飛行機に乗り遅れた(またかよ)。
最終便でなくて本当によかった。
梅田さんとの対談に関連して、 筑波大学評が面白かった。
筑波大学は微妙なランクづけの大学です。
(中略)
というわけで、筑波大の男性と女性は、おのずと仲良く暮らして共存するしか道はなく、身近にいる、自分と同じくらいのレベルの身なりの田舎の学生である同級生や先輩・後輩などと健全におつきあいするのでした。
そうして、全体的にのんびりとした人格形成がなされ、
遊ぶ場所もないからひたすらに好きなことに没頭して、
(まつもと氏の場合はプログラミングだったのかも。
純粋培養の中で、おひとよしで、利害関係にもうとい、でも専門分野にはやけに強い人間がつくりあげられてゆくのでした。
私の人格に筑波大学らしさが反映されているかどうか、 自分ではよくわからないんだけど、 「おひとよしで、利害関係にもうとい、でも専門分野にはやけに強い人間」 というのは当たってると思う。
いや、私は高校時代からそうだったような気がするけど、 そうだとしても自分にふさわしい大学を選んだのだと思う。
でも、そういうのって、日本だと東京とかの一部の都会を除くと ごく当たり前なんだと思うけど。
それはともかく、 東京の雑踏とかに立つと、 なんとなく「激しい生存競争」を連想させて げんなりする。「私はここにいるべきじゃない」と強く感じて 田舎に帰りたくなる。
シリコンバレーに行っても、ほかの誰かみたいに「こここそ天国」とは 感じなかったのは、アメリカに付き物の「生存競争の臭い」がしたからかも。
Aaron Swartzの講演録。 一番印象に残ったのはここ。
みんな自分のやっていることがわかっていないと仮定すること。多くの人は何かを試みることを避けるが、それはそのことについて十分に知らないと感じるためか、自分の考えつくようなことは誰かがすでに試しているだろうと思うためだ。物事を正しくやる方法について何かアイデアを持っている人というのはごくわずかで、新しいことを実際試みる人となるとさらに少ない。だから何かについて最善の努力をするなら、 結構うまくいくものなのだ。
そう、ほとんどの人は自分がなにをやってるか分かってない。 自分の行為の結果を予想できない。 できても、それは大抵はずれる。
にもかかわらず、分かっていると思いこむことに問題があるのだ。
しかし、逆に考えてみよう。他の人がほとんど現実を認めることができていないのだとすると、 現実を認めるだけで、あなたはまわりの人よりも 大きな一歩を踏み出していることになる。
Aaronの言いたかったことはそういうことなんだと思う。
手持ちの2GのSDカードにRubyConfのビデオデータを書き込んでたら、 read/write errorが発生して、その後書き込めなくなった。 マウントもできない。
パーティションテーブルから壊れているらしい。 fdiskしてもbroken partition tableというエラーが出て書き込めない。
もしやハード的に壊してしまったんだろうか。 そんなに酷使した覚えはないのだ。