2006年 11月 (4)。

人間、ウソをついているときが一番感動的だ。

Last Modified: Fri Dec 1 00:25:47 EST 2006 (12/01, 14:25 JST)

Nov 30 [Thu]


(09:38)
ぬっしぬっし。猪突盲信。

うんねこね〜ん

(11:10)
これだ!

目を動かしましょう (サッケード演習第一):






(12:46)
今日は朝から怒涛のようにプログラミングしていたが (といっても 10時半ごろからだけど)、 そろそろ飽きてきた。…

うげーーー火災警報

(14:21)
火星警報のあいだに、ひさびすりに Grey Art Gallary に行く。 今回のは近代 (19〜20世紀初頭) の動画技術が美術に与えた影響を展示するもので、 なかなかおもしろいよ。時間がないのでそんじゃまた。まだコーディング中。
(19:00)
やっとのことで cgi を作成し、メールを出しおえた。 もう javascript は使いたくねー。さいしょ、Firefox でテストしてたら IE では動かず、IE で動くようにすると Firefox で動かなくなるという、 怒涛の行ったり来たりをくり返した。たった 7行のコードなのに、 なんで、こんなに苦労しなきゃなんないんだよ! バカ。 まえに X-Windows は災害であるという文章を 翻訳したが、javascript は、それにかかる人間にしろ金のムダ具合にしろ、 きっと X Window 以上の惨事になっていることは、まずまちがいない。 いまだに二次災害がぞくぞく増加中。そもそも javascript なんてのは 本来新山の人生の中では知る必要のないものだし。 javascript なんかより sendmail.cf の書き方覚えてるほうがまだいいね。 知らないけど。(なんだかドブ板をふみはずしたような気分だ)

今日やるつもりだったのにできなかったこと: merge. まあ、明日やりゃいいや。

(00:08)

意識のなくなった人間と
無意識に過ごしてる機械、
オレたちゃ仲良くなれそうだ!

なんとなくね。

インスタンスに lifetime があるように、クラスにも lifetime がある。
個体に寿命があるように、種族にも寿命がある。

以下略

Nov 29 [Wed]


(10:29)
最近、書くことがないので、研究の内容でも書くことにする。

10:29: ralph の照応解析器はなぜこんなにミスが多いんだろう? オレの使い方が悪いんだろうか? それと構文解析の影響もなんとかして測定せにゃならん。正解データがすでにある場合なら oracle を使えるが、そうでない場合はどうする。ランダムにアホな構文解析結果をまぜようか? 毎度のことながら、下の層がアホっているとほんとに苦労する。 新山の問題意識はアホな下層のシステムを見つづけることで成長してきた部分がかなりあると思う (これは負の教材だが、自然言語処理以外の分野ならまともな教材もあるので)。 この数年間というもの、ロクでもない結果を返す (しかもその動きがよくわからない、コードも腐っている) プログラムに依存するというのがどれほど精神衛生上よくないかを身にしみてわかった。

11:28: げっ、もうこんな時間。いままで NE の文脈をみるのにうつつをぬかしていた。 apf を sgml にして、各 ne が現れる周囲の単語の頻度をみてみる。なんで ORG のまわりに こんなにカッコが多いんだ? と思ったら "(XINHUA)" などの新聞社名がすべて ORG になっている、ということが判明。それにしても偏りすぎていたが、 オレが使ってたのはたかだか 300文書で、データが少なすぎたらしい。 つまらんことに時間をついやしちまった。飽きたのでようやく本題にもどり、 これから原因の追求に入る。

12:21: …原因判明。オレの使い方がまずかった。しかも、大いにまずかった。 ひとつは、なんで North Korea が "North" だけになっちゃうかっていうと、 これはオレの側の前処理がまずくて "North Korea." という文字列を渡していたから。 ピリオドが入ると別物になってしまうという脆弱さ加減。でも、これは、まだいい。 もっと問題なのは nested tags だる。入れ子になってるときは内側の mention しか 使わないほうがいいんだなあ。はっきりいって、外側はひどい間違いだらけ。 これは深く考えずに後処理を書いてしまったオレがわるい。それに、entity merging も もっと真面目にやったほうがいいな。結局 (ケッキョキ)、こういう本質とはまったく関係ない問題で 少しずつオレの精度が削りとられていく (そして卒業できない) っていうのが非常にムカつく…。 あとは「NE じゃないけど名前です」っていうタイプを新しく導入して、 種類がわかっているやつも backoff したパタワンを作成するのがいいと思う。 ポイントは discriminating patterns をなるべく多く取ることなんで、 決定はなるべくあとまで延期させるほうがいいわけ。

(12:34)
最適化反対!
endpos = len(self.words)
self.ranges.append( (startpos, endpos) )
とあるのを、
self.ranges.append((startpos, len(self.words)))
のようにしないこと。 ここでは値 len(self.words) の用途を示すために わざと変数 endpos に代入しているのであるよ! これが自然言語を使わずに意味を記すの法。

ついでにいうと新山は

a.append(x)
のときは空白を入れないが、
a.append( (x,y) )
のときはわざとタプルの前後に空白を入れるようにしている。 (実際には (x,y) のようにあまりに短いときはすぐわかるから入れないんだけどね)。 なぜならこのほうが読みやすいから。似たよなことで、 ジェネレータ式にはカッコ内の最初と最後に空白を入れる。
s = sorted(( f(n) for n in seq ), reverse=True)

あーーーっ、やべ、12:00 からの SRG に出るの忘れてた!! ショック誌。今日のは面白そうだからぜひ出ようと思って早く来たのに、 なんてこった!

(16:10)
オイオイもうこんな時間じゃねーーーーーか コラ!! お昼ゴハンをたべて、そのままラウンジで Javier と議論に突入。 気づいたら 2時間たっていた。なんつうこった。フンヌ。 言っとくけどちゃんと研究の話してたんだよ (とはいえ、愚痴もかなり多かったが)。 意味的な喜寿ん(おっと)の入った評価はいつも極端に難しい。しかしみんな苦労してるんだなあ。 「もしも物理とか数学を専攻してたら、こんな crappy な研究分野は 2度とやろうとしないだろうね」 同意。まったくだ。つまり、この分野を選んだときからウチらはすでに負け犬である。 言語自体はまっとうな研究対象だが、承認されているアプローチがどれもまっとうでないのだ。 しかしウチらも卒業しなきぇいけねいからさ…。
(16:45)
照応処理のプログラムを改良していたが、そろそろ飽きて疲れてきた。 いつもこのあたりからオレはいいコロアイにおかしなことを言いだすんだよな。
(18:39)
また Chen の攻撃を受ける。っていうかこいつの攻撃はいつも月曜日のはずなのに、 なんで今日来てんだよ? そして1時間浪費。もういや。 こいつはホントに面接オタクにかかっているらしく、 また受けるらしい。有名企業のである。まったく、 こんなやつはナカヤアキヒロでも読んで以下略。 しかしすでに疲労困憊。

どうでもいいけど中国人はなぜみんな cache のことを「きゃっちゅ」と呼ぶのだろう??

(20:40)
なんとか文書間照応モジウルが動くようになった。 が、まだ結果が正しいかどうかはなんともわからぬ。 一見するとまともに動いているように見えるけど、 ちゃんとなにかで測定しなきゃな。どうやって測定する? またそれ用のツールを作成せねばならないような気がする。 ああもう帰ろ。

…このように、研究のコトを書いても、ちっとも面白くない。

(21:31)
で、帰ってきたのがこんな時間、と。 こう書くとオレは結構マジメに仕事してるなあ、 …少なくとも今日のところは。

明日のヤルコト: 評価用ツールを書く。 merge.

(23:00)
どうでもいいけdo (とでもよろ゛)、きょう日本食スーパーで「女性にgood! 納豆 (大山豆腐製造)」 というものを買ってみた。もちろん当方は女性でないし、少なくともいまのところ 女性に戻る気もないが、なんか「女性にgood! な栄養バランスを考えてつくりました」 とか書かれると「なんだコノヤロウ、なんで女性だけ栄養バランスを考えなきゃならんのだ、 ケンカ売ってんのか!?」という気分になって、アマノジャク度をかきたてられるからである。 同じような論理でむかし JJ とか買ったことがある (じつは JJ って「別冊・女性自身」の略だって知ってました?)。 もう買わないけど。ちなみに「オレンジページ」なんかは結構オモロイので絶対男にも需要があると思う。 まあ、どうでもよろ。納豆に戻るが、べつに大してうまくもなく、 とりたてて栄養を感じるわけでもなかった。そんなもんだろ。

思うに、前近代的な社会においては、何かを「知っている」ことがカッコよかった。 ところが今日の情報化社会においては、「知らない」ことがカッコいい。 そりゃー、山奥に住んでて知らないのはどうってことないけど、 都市部で生活すればするほど情報に汚染されやすいので、 「知らない」ことのカッコよさが高まる。といっても、 すべてに関して無知というわけではない。とりわけ、 「自分の知るべきことだけを知っており、知らなくてもいいことは見事なまでに何も知らない」というのが 一番カッコいい (これはようするに「オタク万歳!」ってことか?)。 少なくともオレはそういう価値観で生活してんで、 いまだに前近代的な価値観の人はキッタなく見えて困りますね。

Nov 28 [Tue]


(16:11)
これは自分を諦めさせるために書いておくけれど、 世の中に「自分で考えない人」あるいは「自分で考えてなそうに見える人」がいる (もしかすると増えている) のは 仕方のないことだ。なぜなら自分で結論を出すというのは、ものすごく不安なことだから。 そして世の中がますます複雑かつ多様化するにつれて、その不安も高まる。 多くの人々は、この不安さを嫌がる。それは不便さを嫌がるのに似ていると思う。 周囲を見まわしてみれば、あらかじめ用意された結論がいくつもころがってるのだから、 そのうちのひとつをボタンで選びゃあいい。そのほうがずっと簡単で快適だし、 たとえそれが正しくなくても販売元の責任だ! 現代は物理的に豊かになっただけでなく、精神的にもずっと「豊か」になっていると思う。 オブジェクトの数を「豊かさ」と結びつけるならばね…。 何人かの人物や思想については、そのソースコードも公開されてるわけだから。
(20:17)
おいおいまたコレか! と思うわけである。飽きないな。よく飽きないな。ふんとni.

(○○に○○○○ことは○○○は■■■■よ。うちの近所では。)

(23:13)
ふと、むかしの日記を見ていて気づいたこと。

"より多くの検索結果を得るには、検索条件から引用符を削除てください。"

いま現在これをクックリすると、 「検索が32語までに制限されているのでとその後の語句は検索には使用されていません。」 と出てくる。あっそ。つまり「し」の前までで 32語なんですね?

より多くの検索結果を得るには、検索条件から引用符を削除」 (27文字)

問題は、これをどうやって 32語に分割するのかということである。

分割案1: 「よ り タ タ く の 検 索 糸 吉 果 を 得 る に は 、 検 索 糸 吉 果 か ら 弓 | 用 符 を 肖 リ 除」 (32語)

…アホらしくなってきたんでもうやめた。 オレはこんなことしてる暇はねえ!

(23:29)
天国耳 【てんごくみみ】 - (1) 自分に対する賞賛の言葉しか聞こえないこと。

ある意味、これは地獄耳よりヤバいよ!

Nov 27 [Mon]


(15:32)
こないだの Python の速度比較つづき。 前回は繰り返しの回数がたかだか 1000回程度だったのでリスト内包表現のほうが勝っていたが、 n が大きくなると最終的にはジェネレータ式のほうが速くなることがわかった。 やっぱリストの作成に時間がかかるんだろう。
  1. リスト内包表記 + xrange (平均 3.27秒)
    s = ''.join([ str(i) for i in xrange(1000000) ])
    
  2. ジェネレータ式 + xrange (平均 2.97秒)
    s = ''.join( str(i) for i in xrange(1000000) )
    
なお、このとき生成される文字列の大きさは約 6MBytes だる。 vnc2swf.py 中では実際にこれくらいの文字列操作をやってるんだけどね。
(18:49)
うわーーんお気に入りのシャツの袖が破けたーーーーーーーー
(23:11)
きょうの授業では無線ネットワークについて。 無線ネットワークは現在さかんに研究されているが (日本の大学ではほとんど聞かないが、NTT が米国の大学に資金援助して研究やらせてたりするよ)、 基本的に無線のネットワークが有線と大きく違うのは以下の 3点である: で、世界に 2台しか無線機がない状態であれば話は簡単なのだが、 ネットワークという観点からみるともっとも大きな問題は多数のノードによる混信である。 なんしろぜんぶ「放送」であるので、しかも電波というのは「自分が大声で喋っているときは、 周りの人の言ってることが聞こえない」ので、誰か 2人が同時に喋り出したらアウトなわけだ。 Ethernet もこの点では broadcast なので同じだが、 Ethernet では混信を即座に電気的に (信頼性のあるやり方で) 検出できるというテクニックがあった。 (これはすごい発明で、もしこの技術がなかったら現在のインターネットはなかったに違いない。) ところが無線にはそれがない。

というわけで、無線ネットワークへのアプローチというのは 2つに大別できる。 ひとつは、無線ネットワークをなるべく『有線っぽく』扱う方法で、 ようするになるべく信号を分離するアプローチである。こっちのほうが扱いやすいし、 携帯電話なんかがやっている CDMA とか TDMA という分割方式はそういう考え方だ (追記: TDMA は時分割で混信を避ける。 CDMA はむしろ混信を利用するが、電話と基地局が 1対1で通信するという意味では同じ)。 どのみち携帯電話が「無線」なのは基地局まででそこからは有線の電話回線なんだから、 基地局どうしの混信は心配する必要がない。ところが、 完全に独立した (有線通信をまったく使わない) 無線機だけで数ホップもルーティングしようとすると おそろしいことになる。実際、そうやってインドの山村にネットを通そうという プロジェクトがあるのだが (Lakshmi はもともとインド出身だが、これに関わっているらしい)、 まともにネットワークを構築するだけでも大変らしい。 で、無線ネットワークへのもうひとつのアプローチというのが、 せっかくだからこの「放送」の利点をフルに活用してやろうという試み。 で、後者のアプローチをとっているスゲー頭いい論文を読んだ。 XORs In The Air: Practical Wireless Network Coding というやつ。以下のような無線ネットワーク

で、A と B がお互いにメッセージをやりとりすることを考える。 A と B は互いに遠くにあるので、メッセージを送るためには 中継器 X を経由しなければならない。 従来の「混信を避ける」アプローチだと、これは
  1. A → X ← B (A と B が各自のメッセージを X に送る - A と B は混信しないので、これは同時にできると仮定しよう)
  2. A ← X → B (X が A のメッセージを放送)
  3. A ← X → B (X が B のメッセージを放送)
というステップを踏まなければいけなかったのだが、 これでは X が A と B のメッセージを 2回に分けて放送しなければならない。 しかし X の言うことはどっちにも聞こちゃうんだから、その性質をもっと積極的に利用すればいい。 というわけで、この論文のアイデアはこうするのだ!
  1. A → X ← B (A と B がメッセージを X に送る)
  2. A ← X → B (X が A ^ B の内容を放送)
ここで A ^ B は A と B の内容の XOR をとったものである。 こうすると、A と B はお互いに自分自身が送ったメッセージは知っているから、 「自分の送ったメッセージ」と「放送されてきたメッセージ」のビット表現の XOR をとれば、 その結果は「相手の送ったメッセージ」になるわけ。…か、かしけぇ!! なんか暗号プロトコルで似たようなのがあったような気がするけど、 これによってスループットが飛躍的に上がるということだった。

Nov 26 [Sun]


(17:36)
この分野にいるほとんどの人が問題設定を間違えていると思うのは、 形態素解析や構文解析や照応解析を「うまく」機械にやらせる方法を 探しているところである。しかし、どうやっても 100% 正確には決してならないというのは、 誰でもわかっていることだ。むしろ本当の疑問は「なぜ人間は構文解析を ミスっても大丈夫なのか?」というところにある。じっさい、新山は 機械よりもうまく英語を構文解析できているとは思わない (日本語だってあやしい)。 にもかかわらず、新山は英語を使えている、あるいは「使えている」と思っている -- これはなにがそうさせるのか? 「世界知識」などというワケのわからない造語で 逃げようとしないこと。おそらくこの問題に真面目にとりくむ人がいない限り、 自然言語処理はこれからどうやっても進歩しないだろう。

Saltzer の論文では、基本的に情報というものは冗長だから end-to-end なシステムが可能になっていると論じている。 そもそも冗長性のまったくない情報というのは gzip ファイルみたいなもんで、 ほとんどランダムな文字列に見える (cf. Chaitin's_constant、 これは定義上、いかなるアルゴリズムで計算できる複雑さをも超えた複雑さをもつ)。 自然言語に冗長性があるのはよく知られているが、それは具体的にどういったたぐいの冗長性なのか。 おそらく、それには言語の文字列以外のところを見る必要があるだろう。 いくつか種類があるだろうが、計算機にとって扱いやすい冗長な情報というものもあるはずだ。 自分たちがふだん冗長だと思っていないものの中にこそ、じつは冗長性があるのかもしれない。 たとえば、○○○○…

…というようなことを考え始めて、もう 2年になります。 が、まだあと 20年くらいは考えなきゃいけませんね。 気の長いことよ。

(追記) それは「言語の知識」ではなく、「メタ知識」に分類されるものかもしれない。 が、新山は「言語機能」と「そうでない機能」が明確に分離されるという チョム好きー的な理論を信じてないので、どっちでもよろ。

(19:48)
日本の Mac の CM はひどいという話を聞いたが、ほんとうにひどかった。 なにがひどいって、PC 役をやってる役者がワザとらしすぎる。 英語版では PC はもっとトボけた雰囲気の人がやってる。 この人ね。 新山はこの役者は結構好きだ (Mac の CM は嫌いだが)。ちなみにこの人は The daily show にもときどき「専門家」として出てきて、おだやかな顔で メチャクチャな説明をしてみせる。こないだの中間選挙の前にも 「電子投票の専門家」として出てきて、最新のモデルである "Diebold AccuClaw" を紹介した。 これは電子投票の機械なんだけど、その形はどう見てもUFO キャッチャーであり、 投票するにはうまく候補者のヌイグルミをゲットしなければならない (Diebold から出ている本物の投票マシンは "AccuVote" という名前)。 この人は実際には Mac を使ってるそうな。

ともあれ、一般に日本では比較広告は好かれないと思う。 日本で Mac を売るんだったらコカコーラが "I feel coke." でやったような イメージ戦略をやったほうがいいのに。といってもオレはそんなの嫌いだが。

(22:25)
なーんか、どっかで火事でもあったのか、街中くさい。 なにか薬品を焼いたようなにおいだ。 最初、駅の中だけで臭っているのかと思ったが、 駅から 10分ぐらい歩いたところでもまだ臭っていた。 そしていま風呂場に入ったら、窓が開いてたのでここも臭くなってしまっている。 なんだこらムカつく。
(01:28)
笑い始め:
笑い終わり:

しかし実は泣いているのかも知れず、区別がつかない。

Nov 25 [Sat]


(13:53)
とんくす
ギビングなんか
終わったぜ
人間 (men)





なぜか「人間」という語句が後のつくときは 「〜ぜ人間」 という言いまわしが多いようのだる。

2、3度おいしい朝食。

(14:16)
オレに尋くな! オレに尋くな!
(16:01)
OpenBSD - Theo de Raadt インタビュー (CFCN-TV カナダ・カルガリー)
アナウンサー: いまやほとんどのカルガリー市民の家にはコンピュータがありますが、 市内に住むある自称コンピュータ・ギークは 45台ものコンピュータを所有しています。 この人物はこれらのコンピュータを、いま世界的な注目を集めつつある オペレーティングシステム、OpenBSD の開発に使っているのです。

レポーター: この部屋には Theo de Raadt 氏が使っている 45台のコンピュータがすべて 収められていて、そのための空調施設が入っています。

Theo de Raadt: このサーバファームにかかってる電気代は毎月600ドルだよ。 警察が hydroponic farm (水耕農場?) をこの地下室にチェックしにこないのが救いだね。

レポーター: 個人からの寄付によって、Theo 氏は OpenBSD と呼ばれるオペレーティングシステムの開発を 監督しています。これは HotMail などのウェブサイトの頭脳と似ているとのことですが、 多くの人はより安全かつ信頼性があり、もっとも清潔なコードを使っていると言います。

Theo de Raadt: 記録をとってるんだけど、 いまんところ 8年間で 1つのセキュリティーホールしか見つかっていないんだ。

レポーター: これらの人々は 15ヶ国から 1週間のあいだカルガリーに集まり、 OpenBSD システムをアップデートし、バグのないものにしています。 アルバータ大学の Bob Beck氏は OpenBSD を使用しています。

Bob Beck: うちでは OpenBSD を使ってるよ、セキュリティと他にはない機能があるからね。

レポーター: トロントにある聖ミカエル病院で働いている Ken Westerback氏です。

Ken Westerback: うちの病院の DNS サーバに OpenBSD を使っていますが、 他にもいくつかのアプリケーションを考えてます。

レポーター: 開発者によると、このようにグループで集まることによって作業がはかどるのだそうです。

Mickey Shalayeff: ある種のことをやるにはこのほうが楽なんだよ、難しい問題も人が寄れば解決しやすいしね。

レポーター: しばしば「コンピュータ・ギーク」と呼ばれるこれらの人々は、新しい地平を開拓しています。 そのいくつかのアイデアは Microsoft Windows にも使われているということです。

Theo de Raadt: 自分たちがギークだというのは認めるけれど、オタクっぽい (nerdy) とは思っていないね。

レポーター: Theo 氏によれば、安全上の理由から名前を挙げられない企業や、 個人ユーザでもデスクトップで OpenBSD を使っている人がいます。

アナウンサー: 最近では Forbes 誌が今後の問題について Theo 氏にインタビューしています。 このオペレーティングシステムについてより詳しく知りたい方、あるいは実際に使ってみたい方は、 ウェブサイト www.openbsd.org まで。

どうでもいいけど (どうでもよろ)、 このアルバータ大学のおっさんが着ているオレンジ色のTシャツに注目。

(18:46)
ダ・ヴィンチなんかで取り上げられるようになっちゃおしまいだ。

Nov 24 [Fri]


(14:41)
一方そのころ、地球では…

Nov 23 [Thu]


(08:27)
今朝は、腹がへって目がさめた。そうか、早起きするには腹を減らせばいいのか!
(12:19)
出酢余寝。
(13:22)
やばいっ、失敗したっ。どうしよ。どうしよ。どう死夜
(16:49)
花屋しまってた。くそ

Thanksgiving is just another shameless commercialized tool of americanization that perpetuates false myths to hide a brutal history of colonization and cultural genocide.

(03:59)
こんな時間に帰宅。

Nov 22 [Wed]


(12:58)
そういえば、きのうの Python ワークショップで習ったこと。
>>> s = [1, 2, 3]
>>> s[0:0] = ['a']
>>> s
['a', 1, 2, 3]
へえ、長さが違うスライスへの代入をすると、挿入になるんだ。 じゃあ削除もできるのかな?
>>> s[0:2] = []
>>> s
[2, 3]
できたのであった。知らんかったゲソ。

ところで、「…でゲス」という語尾はもともとどこの方言なんだろ? (てくるで。)

(14:02)
あなたは気づかなかったでしょうが、 スキャナ文字認識のエラーかもしれんが、なぜこんなに多いのかと思う。

おまけ: google://力ーリング/ 読み方はきっと「リキーりんぐ」だ。そうちにがいない。

(15:51)
「トルコの七面鳥」はやっぱり Turkey turkey と言うのだろうか? いやちがうな、Turkish turkey であるべきだな、カウント伯爵。

ちなみにカウント伯爵の正式名称は「Count von Count」らしい。 この Wikipedia のページはおもしろい。いわく 「…カウント伯爵は、数を数えることに対する強迫性障害 (compulsive disorder) の持ち主である。…」   こういう人 (Arithmomania) ってのは、ホントに実在するらしい。一種の偏執狂だな。 同様の病気として Parenthmania とか Indentatiomania とかも実在しそうである。 オレがそうだけど。

どうでもいいが (胴でもよろ)、カウント伯爵はどことなく志村けんに似ている。 …っていうか、そのものに似てるんじゃなくて志村けんの人形に似てるんだな。 きっと、アレをデザインした人はセサミストリートの影響を受けてると思う。

(17:05)
さて、これから明日にかけて、ニューヨークの人口は一時的に減りますね。
(01:00)
http://news.samba.org/articles/translations/team_to_novell_japanese/

10日ぐらい前に送ったのに、反応が遅すぎると思った。

Nov 21 [Tue]


(15:55)
じごくみみ 【地獄耳】 - (1) 人の秘密などをすばやく聞きつけること。
(16:48)
UNIX 核分裂の実験。 以下のコマンド (grep a foo >> foo) を繰り返し入力すると、最初はすぐ終わってしまうのですが、 ある時点から無限にファイルが伸びるようになります。(Linux でも FreeBSD でも)
$ echo a > foo
$ cat foo
a
$ ls -l foo
-rw-r--r--   1 yusuke  proteus  2 Nov 21 16:45 foo
$ grep a foo >> foo
$ cat foo
a
a
$ ls -l foo
-rw-r--r--   1 yusuke  proteus  4 Nov 21 16:45 foo
$ grep a foo >> foo
$ cat foo
a
a
a
a
$ ls -l foo
-rw-r--r--   1 yusuke  proteus  8 Nov 21 16:45 foo
$ grep a foo >> foo  (16バイト)
$ grep a foo >> foo  (32バイト)
$ grep a foo >> foo  (64バイト)
$ grep a foo >> foo  (128バイト)
$ grep a foo >> foo  (256バイト)
$ grep a foo >> foo  (512バイト)
$ grep a foo >> foo  (1024バイト)
$ grep a foo >> foo  (2048バイト)
$ grep a foo >> foo  (4096バイト)
$ grep a foo >> foo  (8192バイト - 臨界)
$ grep a foo >> foo  (無限ルウプ)
^C
$ ls -l foo
-rw-r--r--   1 yusuke  proteus  2068480 Nov 21 16:46 foo

問題。なぜこのような現象が起きるのでしょうか?

(20:30)
そういやー PhD の Procrastination Talk がきのう市内であったらしい。 知らなかった。まあどのみち授業があったんで行けなかった
ケド。。。

そういや、某ビヅュツ館でヌスまれた絵が発見されたんだってね。 新山は盗まれたことすら知らなかった。が、いっこ 「ご迷惑をおかけしております、まだ届いてません」って絵があったんだけど、 アレがそうだったんだな。

(21:02)
麻績村 (ませきむら) でのおはなし。 麻績のブナ植樹を延期 「熊呼び寄せる」住民から不安

クマだって!!

…このようにして私たちはつねに間違った知識を植えつけるのに努カしています。

どうでもいいが、 Wikiquote日本語版で、 2、3 の記事を英語版から翻訳したら削除されちまった。 なんでも日本ではまだキング牧師やボーアの著作権が切れていないからだそうだ。 Wikipedia とちがって quote は引用が主なので、日本の法律では 著作物の複製にあたる、という理屈らしい。それはまあわかるのだが、アホな話である。 これって Wikiquote 日本語版をほとんど閉鎖するといってるのと同じだよね。 なぜなら「警句を引用する」という文化はほとんど西洋のものだし、面白い文句はたいてい 近代の人物によるものが圧倒的に多い。最初からこのようにキツキツの運用をしていると、 おそらく集まる人も集まらなくなるものと思われるが、もうオレはやる気をなくしたんで どうでもよro。

(21:50)
新山は "cvs" と "svc" と "svn" というコマンドを日常的に使っているが、 これらはどれも混同しやすくてこまる。なんとかしてくれ。
(23:07)
おそろしい秘密 (ひみし) を発見 (はっけそ) した。 Mozilla の HTML parser は <meta> による charset 指定を 1度しか受けつけないのである。 そしてこれは正しいのである。これに対して、新山の書いた HTML parser は 律義に何度もドキュメント中の文字コードを変えることを許していた (実際にはそんな必要はほとんどないと思っていたが、そうするのがラクだったのである)。 ところが、このサイトとかを見ると、 さいしょの meta では chaset=Shift_JIS と書いてあるのに、 しばらくして chaset=ISO-8859-1 とかいう meta が挿入されていることがある! しかも、ときどき。どうやらバナー広告のサーバによって 入ったり入らなかったりするらしい。くそったれ。ところが新山のパーザは こいつを真に受けてしまうために、そのあとの記事を全部 iso-8859-1 として解釈して バケバケになっていた。(ひどいことに、この後 meta は一切現れないか、ISO-8859-1 指定が 2度現れたりする、くそったれ。) つくづく HTML みたいないーかげんな仕様は嫌いだが、 これが XML になったらなったで、もっと微妙な実装依存が出てくるだけなんだろうな。 ああやだやだ。
(00:47)
なぜ os.getlogin が Windows で使えんのじゃあボケ!! とお怒りのあなたへ。
def getlogin():
  import os
  if hasattr(os, 'getlogin'):
    return os.getlogin()
  try:
    import _winreg
    key = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER, 'SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer')
    (name, _) = _winreg.QueryValueEx(key, 'Logon User Name')
    key.Close()
    return name
  except ImportError:
    return '???'

Windows、UNIX、まっこすで動くことを確認。 OS9 は知らん。OS-9 はもっと知らん。どうでもいい。 しかし Windows ユーザ名は unicodeオブジェクトで返されるので注意のこと。

それにしてもウィソドウズはすげえ。何がすげえって、 使っているうちにストレスがたまって死にたくなる。こんなすごいもんをみんな使っているんだから、 ほんと、尊敬するよ人間。(men の日本語訳)

(02:11)
♪ 我はふくろ 楽しきふくろ
♪ 務めはたし 心さやか
ということできょう一日の総括。

今日やったこと:

今やっていること:

夢の中でやること:

明日の朝一番にやること:

♪ ああ富士の麓 山中の森かげに
(フェードアウト)


Document ID: f33304ffa0dc2a2b2303e8d290e264c5

Yusuke Shinyama