彼はトイレでいつも手を洗わない。
おもわず甘いモノ (Mud Pie) を消費してしまった。 そのご、帰ってきて Jinyuan に月餅 (mooncake) をもらう。 中国では旧暦の 8月 15日は旧正月についで特別な日らしく、 なぜか知り合いに月餅をくばるという習慣がある。なんでか知らないけど、 Owen もやってたしな。なんか菓子ばっか食ってる予感。
新山は他人の日記を (ほとんど) 読まないということについて。 たいていの人の web 日記には、こんなことしか書いてない:
(追記) みょうに客観的なのがつまらなくなる原因なのかもしれない。
ところで sendmail や Apache などのアナを埋める人々は毎度毎度 「今度こそこれで最後だっ!!」と思っているのだろうか。 そぼくな疑問。
ちなみに新山は OpenSSH については負け犬です。わそわそ
これはまだ想像だけれど、文字ごとの単純な頻度を比較するよりも、 同じ文字種が何文字連続するを見たほうが精度が上がるような気がする。 たとえば、文字コード不明のバイト列が次の 2種類の文字列に変換される可能性があったとして:
おじょあjkえらせAEEARAF
燿#%ー淀¢z!フ崩戝輒も梟A
激怒に同意しますか? |
|
また、バカなものを作ってしまった。fffffff
アホさを示すなら言葉でなく行動で示したいよな、と思う。 馬鹿を言うだけなら誰でもできる。
ところでクシャミをしすぎると腰痛になるよ、マジで。
ですか???
僕、ニホン語、不得意。
これで「import の呪い」から解放される。いや解放さるる。 import の呪いとは、Python でなんか軽く実験しようとして、本来ならfunction import { python -ic "import $1"; }
などとやるべきところを、気があせっていきなりシェルから "$ python >>> import Tkinter >>>
import なんとか
" と
入力してしまい、結果として /usr/X11R6/bin/import
(ImageMagick についてくる1コマンド) を
起動してしまい、いきなりカーソルが十字になってあせるという現象をいう。
これで import の呪いから解放されるのだ。やった。
まだ insurance card がきてないのだが、きょうは花粉症の薬を refill できたからいいや。 東工大にたときは保健管理センタぁー (通称ホケカン) など全然行かなかったが、 こっちへきてからは Medical Center さまさま (まさまさ) である。fge.
その後、pykf を使えば問題はあっさり解決ということに気がついた。 最初からこうすりゃよかった。もともと入力だけが問題なので、 文字コードを推測してさえもらえりゃあとは JapaneseCodecs でどうとでもなるのだ。 しかしあらためて思うが、C++ のコードって読みにくさに際限がないよなー。 プログラミんぐ言語に期待される特性のひとつとして 「読みにくいコードはなるべく書きにくくなるようにする」というのがあると思う。 Python の強制インデントは、この点ではそれなりの効果を発揮している。 あと 3項演算子が (いまのところ) ないのも。 そういう観点で見てみると、多くの言語はほんとにひどい。 いつも機能が多いほどいいとは限らないのにな。
台風 (Isabel) が来ているらしく、外では風がビウビウ吹いている。 そういえばきのう、大学のエレベータに「HURRICANE ALERT! オフィスの窓をしめよ、窓が壊れている場合は報告せよ」という貼り紙がしてあったな。
それにしても筋肉痛だ。ちくしょう。腰から太ももにかけて。 歩くとヨロヨロしてしまう。
つうか、あの地図が悪い。
ところで「牛糞猫」っていいなあ。ひびきが。漢字が。 なにやら新しい種類の動物のたぐいに見える。 きっと、ヨネザアドの入り口に (以下略)
おことわりしておきますが、新山はますむらひろしのコアなファンではありません。 彼は視覚的にはかなりアレしてますが、言語的なイメージがまだ常識の範囲内におさまってしまっています。
ls
するとファイルはたしかにあるのに、cat
すると
"No such file or directory
" と言われる。これはなぜか。
(このファイルの中に "$ ls aa bb ccc $ cat bb cat: bb: No such file or directory
cat: bb: No such file or directory
" という内容が入っている、という答えはナシ)
aa
はふつうのファイルであり、dd
はディレクトリである。
aa
を dd
のなかに移動 (mv
) しようとしたところ、
"mv: cannot overwrite directory `dd/aa' with non-directory
" というメッセージが
出て mv できなかった。なぜか。
$ ls aa dd $ mv aa dd/ mv: cannot overwrite directory `dd/aa' with non-directory
いまいち面白くないな…
「ぴ〜〜〜〜ーーーーよぴよよーぴよよょよぴよぴよぴぴよよよぴよよろよぴよょぴよ…」
(悪いエンカイ芸の見本)
どうでもいいけど openssh の日本語ぺえじはなかなか更新されないなあ。 commit したのは昨日なのに。いつも日本語の情報が on time にならないのは まあしょうがないのかもしれないが、なるべく時間差は少なくしたいよね。
「こういう幼稚な美意識って十台 (= 十個の台風) で卒業しといてほしいよね。」
/proc/net/dev
を見て、
画面左上隅の 2x2 ピクセルをチカチカと光らせるだけ。
データが入った瞬間には緑色、出た瞬間には赤色、両方なら黄色に光る。
けれど、うちの環境だとつねに誰か ARP をたれ流してる奴がいるので
チカチカしどおしなのだった。
「これこれ! これだよ! これ!!」といって価値のないものを 価値があるように見せかけて多額の金をだましとる詐欺のこと。
欠陥工事で雨漏りがひどかったという詐欺。
新品のつもりだったのに古着だった。
mouyamemasu.
駅からのショートカットで暗い夜道を歩いていると、 黒人の集団 4、5人 (たぶんまだ若い) が道端にいきなり座ってこっちを見ているので ギョッとした。最初からわかってたら通らなかったが、暗いからぜんぜん目立たなかった。 そのうち連中が立ちあがって後からついてくるので、なんかヤバそう、と思って 走り出したら連中も何やら叫びながら後を追いかけてきた。うわーー!! と思ってアパートの前まで全速力で逃げたが (こんなに全力で走ったのは久しぶり)、 追いかけてきた野郎のひとりに首をはがい締めにされた。 「うわ〜やられる〜」と思ったが、こっちも必死で アパートの前のフェンスをつかんで大声で「Help!」と叫ぶ。 すぐに大家がバットをもって出てきてくれたからよかった。 犬の散歩をしていた近所の人によると、奴は「こいつはオレの妹にさわった!」と 言っていたという。誰がそんなことするか。バカ。キチガイめ。 (オレも人のこといえないがそういうキチガイではない)
その後、警察が来て事情聴取していった。 「何歳ぐらいだった?」とか尋かれたが、もともと暗いうえに黒人の年齢なんてわかるものか。 とにかく怪我もせず無事にすんだのはラッキーだったとしかいいようがない。 あのまま誰もこなかったら絶対ヤバかったと思う。ぶるぶる。
しかし、「必死」という形容詞はこういうときに使うのだなあ。 とにかく、うちの周辺にはこういうキチガイもときどきいるのだ…。 まあ日本にもそんなのはいくらでもいるだろうけど。 ともあれ、今後は夜はもっと安全なところを歩くようにしよう。
どうでもいいけど日本人と中国人の卑称はそれぞれ Jap と Chink なのに、 韓国人が Gook なのは笑える。つーか、不公平だ…。なんでこれだけ韓国語なのよ?? そんだったら日本人のことも Pon と呼べよ。まったく、アメリカンはアホウで困る。 (アホはどっちだ)
まあ新山の場合は 100%、こっちで修行させてもらっているワケですケド。 国に序列があるのは仕方ないことですな (という考え方になってくるよね、ここに住んでると)。
なんか間違ってるよ。(気持ちはわかるけど)$ sh coldfusion-61-lin.bin Preparing to install... Extracting the JRE from the installer archive... Unpacking the JRE... Extracting the installation resources from the installer archive... Configuring the installer for this system's environment... Launching installer... Preparing CONSOLE Mode Installation... =============================================================================== Choose Locale... ---------------- 1- English ->2- 曰本語 CHOOSE LOCALE BY NUMBER: _
ところで新山の乱雑な類推によると ColdFusion ≒ ぞうぷ、だよね。 サーバサイドお手軽 web 構築ツールで、PHP よりは高級だが J2EE ほど大げさではない、という意味で。
新しい概念を理解するPython 2.2 からイテレータという概念が導入されました。ええと、実際にはこれは正しくなくて、 ヒントとなるアイデアはすでに古くからある関数 xrange() や、ファイルオブジェクトのメソッド .xreadlines() の中に あったのです。Python 2.2 ではこれらの実装内部に埋めこまれていた概念を一般化して、 自分用のカスタムイテレータを作るのがずっと簡単になりました。これは新しく yield キーワードを 導入したおかげです (ある関数内に yield キーワードが含まれているとその関数はジェネレータになり、 つまりそれがイテレータを返すことになります)。
イテレータ導入の背後には 2つの動機がありました。あるデータをシークエンス (訳注: べつに大声で主張する気はないが sequence のカナ表記はシークエンスとすべきだ、 英語では "qu" の音はしっかり発音する) とみなすことはときに物事をずっと簡単にします。 また、あるシークエンスを順番に処理していくときには、 それらの要素すべてが必ずしも同時に存在している必要はありません。
この法則がよくわかるのが、x*() の例です (訳注: ここは意味不明、x*() って何?)。 もしあるプログラムがあることを何億回もくり返したら、たしかに実行には時間がかかるでしょうが、 だからといってそのプログラムが必ずしも大量のメモリを必要とするとはかぎりません。 同様に、もしある種のファイルが 1行ごとに処理できるとしたら、そのファイルを ぜんぶ一度にメモリに入れておく必要はないのです。この種のほかのシークエンスもすべて ちょっとずつ (lazy に、緩慢に) 処理できます。 ある種のチャネルを通して徐々に集まってくるデータや、段階的に進む計算の結果など、ものにもよりますが。
ほとんどの場合、イテレータは for ループの中で使われます。 それはちょうど普通のシークエンスのように見えることでしょう。 イテレータは明示的に呼び出せる .next() メソッドをもっていますが、 おそらく読者が見る 99パーセントは次のような形式になっているはずです:
for x in iterator: do_something_with(x)
上のループは「裏方の呼び出し」 (訳注: 「バックグラウンド」と訳したら UNIX ユーザにとっては別の意味になってしまう) である iterator.next() が StopIteration 例外を発生させるまで続きます。 ところで、普通のシークエンスも iter(seq) を呼び出すことによってイテレータとして扱えます -- これはメモリの節約にはなりませんが、以下で説明する関数では役立ちます。
html2txt.py
。
こんなもんは sgmllib があれば 5分でできるようなもんだが、いちおう日本語の web ページから
きれいにテキストだけを抽出することを目的にしてあるので、全角文字の間に改行があっても
スペースに置きかえないとか、JavaScript やスタイルシートは無視するとか、
こまごまと手を加えてある (といっても 30分でできるようなもんだが)。
でも段落以外のレイアウト情報がぜんぶ落ちてしまうので、純粋に web クロールして
自然言語コーパスをゲットしたい人以外には使いみちがないかもしれない。
Google で「html2txt」を検索したら一番上にシェアウエアが出てきて力ぬけた。
なんでまたそんなものを…売れるんですかね…
そう簡単に自分を許してはいけません。まちがっている
そういえば話は変わって kconv-1.3.1 ですが、なんか euc を変換しようとしたら Segmentation Fault が出る。あとで原因究明。
なんだか最近ここに計算機な話しか書いてないような気がする。 これはよくなきこ。と。だよこれは。だよ。
まいったか!!! f!f!f!f!f猫。
研究日誌は今日もかけず。(書くことはあるんだけど)
そういえばタナカ先生よかったですね優勝して。
/tmp
などで、
root のファイルをハードリンクすると、
となる。ところが、yusuke$ ln /bin/true . yusuke$ ls -l true -rwxr-xr-x 2 root root 9704 Apr 8 2002 true*
/tmp
は sticky bit が立っているので、
作ることはできても消せなくなってしまうのだ! ほえええ。
yusuke$ rm true rm: remove write-protected file `true'? y rm: cannot unlink `true': Operation not permitted
そういえば新山は過去に一度だけ胴上げされた経験がある。 合格発表のときに、東工大の例の講堂の前で入学書類を受けとって 帰ろうとしたところをいきなりやられたのだ。あれは何部だったんだっけ。 しかし吹けば飛ぶような体格だったためトビすぎたらしく、かなり着地(?)が怖かった。 向こうは善意でやっていたのだろうが、こっちは油断していたのでひたすら狼狽するばかり。 頭の中にはっきりと「屈 辱」の二文字が浮かんだが、てきとうに愛想笑いして帰ってきたような気がする。 この弱虫め! 許すまじ! 許すまじ! 胴上げ許すまじ! きーーーーーー
しかしとにかく、ぺるりん先生の授業はおもしろい。 これほどの権威でありながら、この人は実にイージーな人で、おまけに 100% 純正オタクであった。 彼のページ を見ると、かなりおもしろい Java Applet がいくつも並んでいるが、これは全部彼が書いたものだ (とくに悪魔の政治演説は新山のお気に入り)。 しかも 3D でありながら Java3D などの機能を使っていない。 「Java 1.0 のみで動かす」という目的のために、彼は自分自身で書いたレンダラクラスを 使っているのだ (で、こういうものを作れるようになることがこの授業の最終的な目的である)。 授業は 2時間で、理論的なこととか歴史的なことが半分あって、あとの半分はもっぱら Java アプレットの話だった。教室にはプロジェクターつきの Windows 端末が置いてあって、 たいていの先生はそこでプレゼンするのだが、彼はその端末から Sun にログインし、 みんなが見ている前でまったく何もない状態からすらすらとアプレット (と html) を書いていく。 きょうの授業で最終的に彼がつくったアプレットはこれ。 学科のサーバにログインして web 上のファイルをじかに変更してるので、 結果はすぐに web サーバに反映される。Java のイベント処理になじみがない学生がいるので、 今日はその簡単な入門だ。彼のセリフはこんな感じである:
「はい、ええと、最初に何しようか? てきとうなモノを配置しよう… Thing と名づけとく。 で、こいつに x と y という変数を持たせる。いいよね? で、こいつに何を書かせようか… マルでいいや。いちばん簡単なのはたぶん fillOval() だよね。これでよしと。で、x と y をランダムに決定。 そして実行。…ほらきた。しかしこれじゃつまんないのでもうちょっと何かしよう… x と y をてきとうに動かそう。 randint() を使うよ、おっと、random を import するのを忘れないようにしないと。ほらできた。 ここで mousedown というメソッドを書くよ、これはマウスが押されたら呼ばれる。 ここでは 2行だけつけくわえることにしよう…そうするとほら、押せば動くでしょ? 動きが単純なので加速度をつけさせよう。どうよ? うう、速く動きすぎてつかめない…。 速度に制限をくわえよう。しかし問題があるね。画面からはみ出るのが気に入らん。 どうすればいいと思う? (誰かが「壁ではね返るようにしよう」と言う) そうだ、そうしよう… これでいいかな。重要なのは、座標のチェックは必ず表示する前にやるということだ。 これをもし守らないと… (変更して実行) …こうなる。わかった? えーと、ここまで来たら マルがお互いにぶつからないようにしたいねえ。これはどうすればいいと思う? じゃあここでチェックさせようか…何かほかにアイデアある? クリックしたときに 色を変えるってのはどうよ…」
使ってるエディタは vi である。時々コンパイルエラーを出しながらも、 さくさくとアプレットを完成させていくのを見るのは職人ワザをみるようでとても小気味よい。 しかし、米国の大学の授業がすべてこんなだとは限らないが、一般的にここでは どの先生もかなりのエンターテイナーである。それから非常に実務的だ。 自然言語処理の授業でも、Ralph はいきなり実装をいじりだてビックリしたし。 日本の大学よりもこれが絶対にいい、とは言わないが (こちらでは学生の評価がそのまま 給料につながるようなところがあるので、みんな必死なのだ)、 これじゃ学生のやる気にはたしかに違いが出そうである。 いいなあ。なんで日本にはこういう先生がいないのだろうか?
たぶん、
いつも思うのだけど、毎晩よる眠れないのは昼間たいして動いてないからだ! と思う。もっと動かなきゃさ。ガサゴソと。 太るよ? いやべつにそれはいいんだが、朝をまるまるとり逃がすというのはつらい。
このスキに買い物に出かけ、いろいろな食材をしこたま買ってくる (もうおわかりのように、新山は「しこたま」という副詞が好きです、なんでだろ)。 ところが、キュウリがもう半端じゃなくマズいので激怒する。 まったくよう、なんでこんなにまずいの? べつに無農薬とかじゃなくてもいいんだよ。 この国ではキュウリはもはやピクルスでしか食うなということだろうか。 これでは、野菜嫌いな人が増えてもしょうがないと思う。 ホントにもう。野菜のうまさを知らねい奴とは世界が通じねーよ、けっっ。
ときどき思うのだが、食べ物に対する感覚はその人の人生観を決定する。 理解できない食生活 (3食ファストフードとか) を送っている人は、たとえ話は通じても、 世界に対する根本的な認識というか、平行宇宙に住んでるんじゃないかという気がする。
ところで、fast food を「ファーストフード」って表記するのはいいかげんにやめい! あれのせいで「1番目の食べ物 (=first food) ってなんだ?」と思っている人が 日本全国に少なくとも 100人はいるとみた。 「ファストフード」という表記を使ってる人がどれくらいいるか調べようとしたが、 Google では「ファーストフード」と同一視されてしまっている。ばか。
しかし絶対色感って誰でも持っているような気がするなあ。 じゃあこういうのはどうだ。
カエルかおまえは!
さて、さらに恐しいものになると「絶対道徳観」というのがあるのである!
某大統領が絶対道徳観を持っているなどとは誰も言っていません。
オレは一年に何回歳をとればいいんだぁあ!!
それは日曜日の午後だった。
仏教は本当に健康にヨイのか? いかにもアメリカンだよなあ、こういう記事って。 Village でも、よく「冥想しましょう」というポスターが オウム真理教に似たシンボルとともに貼ってあるのをみかけるけど、 お前らが健康のためにやることはそんなことじゃねーだろ、 まずその食生活をなんとかしろと思う。 それがわかってないからアホなんだけど。
いま、ふいに、自分には (不完全な) 絶対音感があるらしいということを発見した。 440Hz の音を何も聞かなくても口に出せるのだ。 これって絶対オンカンというんでしょ? だからどうしたって感じだけど。 xmms の tone generator plugin をつかうと、 ファイル名に "tone://440/" などと入力すれば音が出るので確認できる。 でも「ラ」しか覚えてないので楽譜起こしはできないと思う。 原理的には(?)、いつもここから数えていけばわかるのだけど… あ、救急車の音も覚えているからシとソもだいじょぶだな。
An Overview of Absolute Pitch というページをみると、 絶対音感は遺伝するのかもしれない、とある。ホントか? でもこのページでは言語と絶対音感の関係について述べていておもしろい。 それによると「誰でも生まれたときは絶対音感をもっているのだが、 言語のイントネーションを身につけていくうちにそれは失われる。 とくに英語のような抑揚の言語では、絶対音感は非常にジャマになる」という。
ホントか?
つーかすでに最初の「遺伝」という説と矛盾してる。
お天気じゃないと何がイヤかというと、他をる (くそ、この skk は「wo」と打つと何が何でも変換しようとするようだ。 「たをる」と入力してからカナ変換しようとして「Taworu」と打ったら「た」だけで変換されてしまった) を 干せないのでヒネくさくなるからだ。 ところで「ヒネくさい」って方言なのかな…と辞書を弾いたら、 「ひねくさい: 年よりくさいこと」とあった。 なんかちがうぞ、これ。もしかしてオレは「カビくさい」と「ひねくさい」を間違えているんじゃないか? という気がしてきた。でもうちの親もこの言葉を使っているしな。
つまり、親子揃って言語障害一家なぬかもしれない。
…などと、余裕をなくしてはいけない。 「もっと他に」「そんな暇があったら」というのは、 新山の人生そのものを否定しかねない危険な言葉だ。
こんなこと書いてる暇があったら
なにより敗北なのは、curses ではキーバッファがたまるということを 完全に見落していたことである。やはり Pygame なりなんなりで作るべきだったのだが、 「文字ベースで動く」というバカバカしさの誘惑には勝てなかった。 いちおうボールをトスするキーとフリップするキーがあるのだが、 離したあともいつまでもフリップしている。 おまけにトスしたボールがまた右側のミゾにスポっと入って元の位置に戻ったりするし…。 たぶん、お笑いソフトとしては結構いいかもしんない。 なんでオレはこういうヨゴレ芸しかできないのだろ。
そういえばむかし作りかけてた漢字版 Rogue もどきってのがあったな (ダンジョンの絵がすべて全角文字でつくられている)。 あれはどこ行ったんだろう。
で、オレはこんなものに 2時間も費やしてたワケですか?? アホですか一体???
ところで、 神聖モテモテUNIX なるスレがかなり面白いのは気のせいだろうか。83% ぐらい意味不明だけど, これは「神聖モテモテ王国」というマンガのパクリニだ。 このマンガ、新山はたぶん1巻の最初のほうしか読んだことないのだが、 その「ヘンさ」を理解するには充分であった。ストーリーの支離滅裂さといい、 「〜じゃよ?」とかいうへんてこな疑問文といい、なかなかこういうのはないよ。 ちなみになんでオレがこんなマンガを知っているかとゆうと (新山は普段マンガを読みませぬ)、むかしチベットにいったとき、 同行のハラ君が上海から成都へ向かう汽車の中でこれを読んでいたからである。 周囲にいた女の子たちが「なによんでるの?」ときくと、彼はひたすら 「え? モテモテおうこく」とだけ答えていた。彼女らの「ハア?」という顔もかなりおもしろかったが、 わざわざ中国まで日本のマンガをもってきて車内で読んでる彼もかなりヘンな奴だと思った。 成都には 1日半でついた。
どうでもいいですが、新山はたとえ相手が 2ちゃんねらーであることが 明白な場合でも、相手がその話題を振ってくるまでは決っっして 2ちゃんねらー語を使うことはありません。 言葉はある特定の集団への隷属をあらわし、そのような態度をむやみに相手に見せてしまうのは敗北だ。 ところで、なんかきょうは風がやたら強いようなんですが、こっちでも台風シーズンなんでしょうか?
…あーまったくもう…ばっか!!
すべての自然言語に共通する抽象的実体というものがあるとしたら、 それは object と relationship なのか。 物理的な単語は物理的なものどうしで、抽象的な単語は抽象的なものどうしでかたまるのでは。 あと、文体を学習することはできるのか。だとしたらそれが表すものは何でなければならない。
きょうのセミナーは機械翻訳の評価について。 こんなのは山形さんとかに聞かせたら怒りだしそうな話だna.
このメモを日記でない。なぜ日記とよばないかといえば、
それは毎日書くなどというとりきめはしたことがないから。
書きたいときに書く。し、かならずしも本当にあったことばかり書くわけでない。
そのうち。
死者は英雄的行為を強制されないものです。 (死者に対する法律・第3条)
さて、話は戻りますが、新山になにか属性があるとすれば、 それは Python を使っていることでも、ニューヨークに住んでることでも、 長野県出身なことでもないべつの何かだと思う。いったいなんだろう? 根暗してるとこかな。たぶんそれはこの世界にはまだ存在してない概念で、 たとえていえば「校庭の鉄棒はなぜ雪でひん曲がるのか?」ということだと思う。 (当然ながら、意味がわからないように書いています)
もっとも、たいていの人はくだらない属性ほど重視したがるものですが。 それしか知らないからなんでしょうけど、そう簡単に知られてしまってはこまります。
問. 以下の日本語の使い方が間違っている以下の文章のうち、 以下の正しくないものを以下の選択肢に如何に選べ (2点) :
ばーかばーか。ばーかばーかばーかばーかばーかばーかばーかばーか。
ばーかばーかばーかばーかばーかばー? ばーーかばーか!!
ばーか。ばーかばーかばーかばーか? ばーかばーかばーか…
ばーか、ばーかばーかばーかばー!
ばーかばーかばーか、ばーかばーか。ばーかばーかばーかばーかばーかばーかばーか。
ばーか。
ばーか。
“たぬき汁ってぼく知らない。(のっそりと) ”