いまローマ字変換ルーチンをつくっている。とーぜん python で。 ただ変換するというよりは、ある文字列をまずいったん parse して 内部表現である Mora オブジェクトの列に変換し、 それを各表記 (カタカナ、ひらがな、半角カナ、訓令式ローマ字、ヘボン式ローマ字) に export できるようにした。かな文字はときにモーラごとの処理 (Mora = 日本語の拍の単位、たとえば 「ぴ/ちょ/ん/く/ん」は 5モーラである) ができると便利だと思ったからだ。 そして半角カナは結局無視できない需要のため入れることに。 結局、半角カナって消滅しなかったなあ。まだ fj 華やかなりし 7〜8年前には、 半角カナは激しく忌み嫌われていたし、いずれは消滅するだろうと目されていた。 が、しぶとく生き残った。Unicode に入ったのでエンコーディングの問題も 解決しちゃったし (あくまで unicode を使ってる限りではだが)。 これからも半永久的に存在しつづけるだろう。 そしてその普及 (むしろ復活というべきか) には某ツウちゃんねるが無視できない役割を果たしたことは否定できない。 あんなやり方で半角カナが使われるなどと一体誰が予想しえただろうか? つくづく世の中は予測不可能である。
そういえばむかし、なにかの遊びで「チョコレート」を「ち・よ・こ・れ・い・と」と数えるのがあったが、 新山はむかしから「『ち』と『よ』を分断するのは間違いだろ! これはひとつの音だろ!」と思っていた。
いやそれにしても。育ちがバレるっす。
(心臓の悪い方は、いまの文章は読まなかったことにしてください)
$ dnsip b.root-servers.net 192.228.79.201 $ cat /service/dnscache/root/servers/@ 198.41.0.4 192.228.79.201 192.33.4.12 128.8.10.90 192.203.230.10 192.5.5.241 192.112.36.4 128.63.2.53 192.36.148.17 192.58.128.30 193.0.14.129 198.32.64.12 202.12.27.33
ひさびすりに 2ちゃんねるを見ていたら、こんなことが書いてあった。 きょうの the quote of the day だな:
>>96 きみはあれか、オブジェクト指向の説明をするときに フルーツをつかって説明する痛い香具師か。
どうでもいいけど「きょうの the quote of the day」というのは 頭痛が痛いよな…。複数の言語で頭痛してるところがポイントたかい。
s.py
である。
たぶん、ホントーは XMLRPC のデバッグ出力をさせるオプションかなんかがあるんだろうけど、
ようわからんかったので。ちなみに以下のような出力が得られる (読みやすさのために適宜整形してあり桝)。
$ python s.py 9001 localhost 9000 (9001/tcp で接続を受けて、9000/tcp に中継) (中略) Accepted: 127.0.0.1 SESSION 17: BEGIN SESSION 17: (connecting to localhost:9000) >>> "POST /RPC2 HTTP/1.0 (クライアント側の要求) Host: localhost:9001 User-Agent: xmlrpclib.py/1.0.1 (by www.pythonware.com) Content-Type: text/xml Content-Length: 163 <?xml version='1.0'?> <methodCall> <methodName>release_session</methodName> <params> <param> <value><int>1075717356</int></value> </param> </params> </methodCall>" SESSION 17: (connected to remote localhost:9000) <<< "HTTP/1.0 200 OK (サーバ側の応答) Server: BaseHTTP/0.3 Python/2.3.3 Date: Sun, 01 Feb 2004 01:10:40 GMT Content-type: text/xml\r\nContent-length: 121 <?xml version='1.0'?> <methodResponse> <params> <param> <value><int>1</int></value> </param> </params> </methodResponse>" SESSION 17: (closed by remote localhost:9000) SESSION 17: END
asyncore は便利だが、一般的な TCP フォワーディングは思ったよりむずかしかった。 最初ふたつの dispatcher を使えば十分だと思っていたが、実際には 3つ必要なのである。つまり:
で、中継者がプロトコルについてあらかじめ知っている場合は asynchat が使えるんだけど、 一般的には中継君はプロトコルについては何も知らず完全に非同期なので、 サーバとクライアントの速度がまちまちだ (両方とも速くなったり遅くなったりする)。 だからデータが途中でたまるんだな。それで片一方から接続を切られたりすると 「えーとこいつが捨てぜりふを吐いたからこっちは disconnect してと… ああでもその前にあっちからもらったデータをフラッシュしなくちゃいけないんじゃないか、 あれあれ?」などと大混乱。中間管理職の悲哀ってヤツですよ、これ。 きっと。
ぺけれん
さういえば桜ギーチョ駅ってなくなるんですってね、 新山はいまだに横浜という街には一度もまともに行ったためしがない。 ああ、中華街はあるけど。それと高速教習でも行ったな、第三京浜通って。 でもどちらも夜で、高速教習のときは保土が谷あたりに着いたらすぐにまた引き返してきたので 何も見えなかった。昼間に行ったことがまったくないのである。まあ別にいいんだけど。 唯一おぼえてるのはそのむかし大学で徹夜したあとに、なぜか頭が狂っていて、 サムくて寝る場所がないので「そうだ電車の中で寝よう、そうすればあったかいぞ」と思い (なぜ下宿に帰ろうとしなかったのかまったくもって謎である、またすぐに大学に来るつもりでいたらしい)、 ほぼ始発の東横線で自由ヶ丘からズーっっと桜木町へいって、往復して帰ってくるまでずっと寝てた、 というものである。いやあ、若かった。あれはいったい、なんだったのか?
しかし「あのころは若かった」といいつつも、あれからずいぶんたったはずなのに、
肉体的にも精神的にもあまり年をとった気がしないのは、オレがアホだからだろうか。
それとも 30 になった途端にがくっと来る (何が?) のだらう
か。
まあいいや。
この基準だと、XML は validation にはいいが可読性がダメである。 S式は可読性はいいが validation がダメである。
この日記に書かないことも、またある。
…ちなみに chasen の技術的な貢献というのは、
職人ワザに近い世界であった Juman のアルゴリズムを大胆に単純化して、
そこそこの精度を出したということにつきると思うのだが
(「外ヅラをよくして配りまくって名を売った」というのは偉大な業績だが、それは技術的な貢献じゃないのでここでは無視)、
逆にいうとこれはちょっと計算機科学によりすぎている、と最近おもえてきた。
おそらくまともな言語感覚をもっている人なら、chasen の吐く日本語には違和感をおぼえると思う。
たとえば chasen で「そうかもしれない」を解析すると、
「そう / か / も / しれ / ない」という結果になるが、ふつう常識的に考えて「かも」は 1単語だよな。
juman ではちゃんと「そう / かも / しれ / ない」になる。ほかにも、「そうだろう」を解析させると
chasen では「そう / だろ / う」になってしまうが、「う」ってなんなんだよ??
おそらく精度を上げるための苦肉の策なのだろうけど、精度のために日本語を変えてもいいかというと
意見が分かれるとこだと思う (それとも IPA がもともとそうしたのかな? この手の話は完璧な定義がないだけにやっかいだ)。
まあそのおかげでアルゴリズムは
アホみたいに単純になっとるわけで、正規表現エンジンなんかよりも簡単につくれてしまうワケですが…
(実際、python で regpat.py
をつくったときのほうがよっぽど大変だった)。
ところがこれとは対照的に juman の内部は謎に満ちており、なにをやってるか今だにわからない
(といって、実は chasen もオレはソースをきちんと読んではいないのだけど、
あの辞書ファイルと連接データをみて「ああ、だいたいこんなかんじだろ」と思って
実装したら動いてしまった、その程度の単純さなのである)。
juman の設計方針は明確に違っており、なんか日本語の機微をうまいこととらえようとしているらしいのだが、
その結果、内部はすんごくわかりにくい (ソースも読みにくいし)。つまり、ここには
こういうジレンマがわかるようになることを「オトナになる」っていうんですかい?
INADDR_ANY
を listen するのだ。
…こらー!
当然、パッチをあてて loopback のみに限定したけど
(それと daemontools で動かしているので fork() しないようにするとか…
まあこのへんは基本つうことで)、うちはグローバル IP なんですよ?
こんな危険なモンをお外に向けてぱっくり口を
開けさせるわけにはまいりません。まあ、セキュリティホールなんて
誰も気にしなかった時代のものだからしょうがないけど、
やはり自然言語屋にサーバプロセスを任せてはいけないと思った
(同じことはセキネさんやスドウさんを見ていても感じる)。
そういうオレは、やっぱり自然言語屋には向いてないのかもなあ。
で、同じような危惧は chasen にもあるわけで (まだこっちのほうがまともそうだが)、 そういう意味でも高レベル言語で書かれた形態素解析はいいかもなーと思ったりする。 もともと cgi で使いたかったんだけど。しかし、juman のセキュリティーホールを 突くようなクラッカーがいたらある意味それは尊敬に値します。
ところで、きょう「オープンソース系の人々にはなぜひらがなの名前を使うやつが多いのか」 とかいう文章をみかけて暗くなった。まず「オープンソース系」とかいう言葉からして すでにアホさ爆発なかんじ。その理由は、どうせ「ひらがなのほうが物腰がやわらかそうに見えるから」という程度の 安易なもんだろうが、みんながこの手のステレオタイプにぶら下がろうとしているのには笑える。 つうか、見てて気味悪い。ちなみに新山は掲示板に書きこむときだけは 「新山ゆうすけ」というふうに名前をひらがな表記にしておりますが、 これには理由があって、あるとき同じ掲示板に書きこんでいた「新井」さんと 間違えられるという事件があったからである。 ふたりとも姓 + 名がそれぞれ漢字二字づつだったのだが、周囲からは同一人物だと思われていたらしい。 そもそも、web 上で文字で描かれた名前なんてのは基本的にパターン認識しかされないわけで、 あたりの人々にとっては、きっと二人とも「“新”ではじまる漢字四字のやつ」くらいの認識しか されていなかったんだろうな…。なので新山は「漢字×2 + ひらがな×4」というパターンで差別化をはかり、 おもしろいことに新井さんのほうもそれ以降はローマ字などで名前を書くようになり、 漢字四字は使わなくなった。自律的な衝突回避というべきだろうか。 いまでも「漢字 + ひらがな」というパターンはそんなに多くないので、 これはわりと識別に役立つ。はず
しかし、「新山」という文字列は、ふつうの人の頭の中では絶対「にいやま」と読まれているに違いなく、 「オレはニイヤマじゃないのだ!」ということを主張するためにも「しんやま祐介」というふうに すればよかったのかとも思うが、それだと「いかりや長介」とあんまり変わんなくなってしまうのでやめたほうがいいです。
なんかもうちょっとサラっとして、後にのこんなくて、糖分もカフェインもとくになくて、 お湯以外のものがないかな〜。まあ、お湯でいいか。
$ dnsip b.root-servers.net 128.9.0.107
www.bakatohasamiwatsukaiyou.com
↓ ↓ ↓↓ ↓ ↓↓↓ (おちこみの表現)
研究日誌:
もういっそのこと記事を全部 cdb で補完しておいたほうがいいのではないか?
と思いはじめた。1年分の記事の 1文1文 にすべて文 ID をつけているので、
文 ID から実際の文章を検索できたほうが便利なのである。
でももう眠いや、つかれた。明日やろっと。
自分の名前をわざわざひらがな表記にしたりハンドル名を使っている人は、 おそらくきっと自分の名前 (字形や語感) に満足してないんだろうな、と思う。 そういう人々は非常にきのどくだ。でもひるがえって、 もしオレがたとえば「バンヘコー山・餌雲ギャー之すけ (sic)」とかいう名前だったら、 きっとペンネームにしただろうよ。そう考えると新山はいまの名前が すごく気に入っているので (発音も漢字表記も)、この点についてはかなり恵まれた位置にある。 だからひらがな表記を使っている人などをさして「ばーかばーか」などといってはいけない。 ちなみに「ゆうすけ」というひらがなは自分でもあまり気に入っていない。 「はらい」が多すぎる (「ゆ」「う」「す」「け」すべての文字に 「ノ」という形のはらいが含まれていて間抜けだ) し、 ローマ字で「yusuke」というのも気に入らない。 タイプしにくいのである。しかし euske は前と後が両方 e で終わるのがなんかなあ…。
このようにいろいろ名前というものは難しいわけであります。 やっぱりオレは「新山 祐介」が一番いいや。 ちなみにこれは北京語で発音すると「しんしゃん ようじぃぇ」 だが、この発音でさえ気に入っているのだった。
Navneet がインドでしか手に入らないというアッサム・ティーをおみやげに 買ってきてくれたのだが、インド人は Assam を「アサーム」と発音することがわかった。 「アッサム」だと思っていたので最初なんのことかわからづ。
マンハッタンは雪景色であり、オレは眠い。 なぜならなぜだから! それは、昼メシを食ったからだ。 メシを食うからにはいつも眠くなる。 寝ないためには、メシを食わないこと! すこしも!
そうすればずっと眠り始める。
(おもに大量の time-series の分析に利用するデータベース + 言語らしい。cf. http://www.kx.com/)
そのうち、寒くてションベンいきたくなって汗った。
> On Monday, February 9 from 7:00PM to 9:00PM, NYC ACM SIGGRAPH is very > proud to present the SIGGRAPH 2003 Electronic Theater. This screening > will be held at NYU's Kimmel Center at 60 Washington Square South in the > Village.
さいきん、NY が刺激的で飽きない街だという、観光客のガイドブックに書いてあるようなことが、 じょじょにわかるようになってきた (三年目にしてようやく、という感じではあるのだ)。 といっても新山はライブハウスや劇場や美術館にはほとんど 行かないので、普通の観光客のそれとは全く異なる意味でだが!
それらは「それら」という名前がつけられている。
それにしれもそららは何で荒るの家 [か] かっこ国家
なんか来週までに読まなければならない論文 (専門内、専門外ふくむ) が 全部つみ重ねると厚さで 1センチぐらいあるのですが…。
おー寒。
外は雪がふりっている。明日までにゴップリつもるらしいぞ。
どうすんかねこれ明日。
翻訳: ふつう、日本で「27日の最低気温」といえば「27日早朝の気温」をさすが、 米国では「27日夜半の最低気温」つまり、「28日早朝の気温」をさす。 まあそういうことである。はて。
さいきん、どうも扱うのは数百 MB の cdb ばかりである。 自然言語の研究者でこれを使わない人はまったく損をしているよ。 ほとんどどんな目的にでも使える。統計処理にも、木構造データの格納にも、 そして辞書引きにも。メモリもまったく食わないし、 データがばかでかくなってもほとんど遅くならない。 おまけに、Python からの使いやすさ。 しかしこういうものは人に教えてもだいたいみんな理解しないのでほうっておく。 新しいツールはそれまで考えてもみなかった実験を思いつかせる可能性もあるのだが。
問. 以上の文節を並べいかえて新しい「正しく文」をつくりなせを。
オイルサーディン
-- 新山 祐介コンビーフ。
すでに死滅したかと思われたこの種族がまだ生きているということをあなたは知る。
ね。
オ。
さて、これを見たらぼくこそコンビーフが無性に買いたくなり、
鍵交換を申し出たが断られた。コンビーフのね。
さて、これを開けるためには鍵がいる。
背後にイカ釣り船の穂先がしらじらと燃えているを見え そして それは それは
「ピクルスは1日1本まで。」
とか書かれた看板 (デンプン室)。そしてあなたはいつまでたっても電話に出ない。
だな。
日が短くなっているので、日輪はもう届かないほど遠くにいってしまった。
おれはコンビーフの鍵で住居侵入をしようと試み、逮捕されるだろう。そしてハッシュ津所でいうんだ、「この鍵が! この鍵が! (ここで湯気がモワモワモワ)」
(暗転)
酒のつまみにはあわないと思う。温州みかんだから。
</blcokquote>
それにしてもオレはシャワーをあびながら歌をうたうクセがある。 惰性にすぎないよ、それは。
くわどらてぃっく,
くわどらてぃっく
さて、首でもつってくるかな。
まさに今のオレがそんな状態だ!
そのちがいについて。そのちがいとついて。
彼は 生きて いる。
ところで、「食いつなぐ」っていう表現が好きである。
ちなみに「泣きマック」の音で一番すきなのは MacII の 「ぴろぱろ〜ん♪」だな (まあ他んのはあまり聞いたことがないんだけど)。 なんかさ、壊れててシャレになってないときに、この脳天気サウンド。 このギャップ。笑えた。
ワレラノヒョロコビ! (かっこ国家)
なんでもかんでもやっつけろ〜おう雲雲雲雲雲空白
-4 -4 -4 -4 -4 -4
-16 -16 -16 -16
-161 -161 -161 -161 -161 -161
-1729 -1729
どどんがどん! どどんがどどん!
Tape Read Error Ok
もしやここが山男の家やもしれぬと思い、あなたは怖くなって逃げ出して来た。
それから??
SELL BY NOV. 22
」とか書いてアル。
ふんぎょえ〜! 気がつかなかった。新山は料理でいつも豆腐をよく使うので、
ついうっかりまだあるのに気づかず、新しいのを買ってしまっていたとみられる。
しかし開封してみるとまだ匂い的に大丈夫そうなので、
なんとかてきとうに調理しちまおうと考える。で、どうしよ…。
いま、他になんにも食材がないんだよな。
ほとんど豆腐だけでできる料理として、まっさきに思いつくのには
豆腐ステーキがあるが、小麦粉その他がない
(これで新山の料理レパートリーの狭さがバレてしまうね、オレは揚げ物系はほとんどやんないのだ!)。
というか、オレは片栗粉で焼くのが好きなんだけど、それもないし
(どうでもいいけど片栗粉ってふつうに売ってるのか? 英語でなんて言うんだ?
…と思って調べてみたら potato starch というんだそうだ、
でもこっちのスーパーでふつうに売ってるかどうかは気にしたことない)。
けっきょき、めんどくさいので全部みそ汁につっこんじまうことにした。 年代ものの豆腐なので、炒め物だとかなりしっかり加熱しないとがヤバそうだし…。 そしたら大量のみそ汁が完成。しかも、このさいだからということで 余ってた赤味噌もぜんぶ使いきっちまえということで全部投入したので、 ものすごく濃い。ニボシも大量使用だが、毎回お椀に盛るたびに ポットからお湯を入れて薄めなければならないほどの濃さになった。 これ、いつまで持つんだろう…
ところでいまいきなり何日か前に見た夢の記憶が復活した。 どこかの島に廃虚と化した海上都市があって、 そこに 1日だけ列車を復活させるというイベントがあって、 オレはそこに客として乗っているという夢だったのだが、 なんか発車時刻がヤバいのにその廃虚 (錆びたスクラップがうず高く重なっているような代物) で道に迷って、 しかもなんかほかにも障害があったような気がする。 これはどっかの映画かなにかを元にした夢であるのか、 それとも新山オリジナルなのかわからない。
なにーーーーーーーーー!!
と思った。ので、もう一度くり返しておく。
なにーーーーーーーーーー!
I am more than ever convinced that this type of work [designing systems] is just difficult and that every effort to do it with other than the best people is doomed to either failure or moderate success at enormous expenses.-- Edsger W. Dijkstra (1968)
この 1968年の Dijkstra の論文は、あきらかに“UNIX 以前”の論文であるが、 ここにはのちの多くのマルチタスク OS の萌芽となるアイデアがみられる。 ここで Dijkstra は、以下のような貢献をしている:
これだけ古いと、まるで古典を読んでいるのと感覚がいっしょだ。 まず、この論文コピーは ACM Communication なのだが、 全部タイプライタ体 (プロポーショナルフォントじゃない) でかかれていて、 とても読みにくい。そして彼らの使っている用語がちがう。 「マルチタスク」という用語はまだなかったらしく、 彼らは「マルチプログラミング」と読んでいる。メモリの呼び方は 「コアメモリ (!)」と「ドラムメモリ (ディスクのことか?)」だし、 ページングは「backing store」だ。おまけに Appendix には 「セマフォのしくみ」とその定理などが載っていたりする。 うーん、時代。
庭の植えこみのまわりを歩いているときに声をたてて笑ってから、 Control-D で終了すると、夜中に首を刃物でつかれて殺される、という夢だ。
(自分でも上の文章の意味がわかっていないのですが、 夢の中で得た知識を正確に記すとこうなるます)
それはいいとして、眠気をさますためにちょっと外へ出たら、 たちまちリフレッショしてしまった…。 どうも -5℃〜-7℃あたりが一番リフレッシュするようである。 わざと手袋も帽子もせずに歩くと、あっという間に手の感覚がなくなるほどにひえて、 人間としての尊厳を失うのはじつに簡単。やはり人間あったかいところだとバカになる、と思った。
だったりするところが好きだ。
ちなみに新山が研究のあいまにこっそりやっているのは、
Python-2.3.3/Modules/Setup.dist
の最後に以下の一行をつけたす:
_japanese_codecs _japanese_codecs.c
Python-2.3.3
のツリー内にコピーする:
$ cp JapaneseCodecs-1.4.10/src/_japanese_codecs.c Python-2.3.3/Modules/ $ cp JapaneseCodecs-1.4.10/src/_japanese_codecs.h Python-2.3.3/Modules/ $ cp -a JapaneseCodecs-1.4.10/japanaese/ Python-2.3.3/Lib/
Lib/site.py
のデフォルトエンコーディングを書き換える。
ここでは "japanese.euc_jp"
にした。
Python-2.3.3/
以下で、mxCGIPython-0.7.0.zip
を展開:
$ cd Python-2.3.3 $ unzip ../mxCGIPython-0.7.0.zip
Makefile.cgi
内の ./configure
オプションを変更する。
doc strings をなくすと小さくなりそうだったので、ここでは --without-doc-strings
をつけ加えた。
config.h: ./configure --prefix=$(TARGETDIR) --exec-prefix=$(TARGETDIR) --without-doc-strings
$ make -f Makefile.cgi
-rwxr-xr-x 1 yusuke users 6743276 Jan 23 21:06 cgipython
$ cat /tmp/a.py # -*- encoding: japanese.euc_jp -*- print str(u"ところで") $ ./cgipython /tmp/a.py ところで(てくるで)
で、さらに…
mxCGIPython
の展開はふつうにやる。
Makefile.cgi
を書きかえて、"clean
"を実行させないようにする
(なぜならこれを入れておくと、オブジェクトファイルを make 後に自動的に消しちゃうから)。
all: config install cgipython archive # clean
$ make -f Makefile.cgi
CGIPython/Makefile
の LDFLAGS
のを以下のように書き換える (Linux の場合)。
LDFLAGS= -static
CGIPython/
以下に cd
し、もう一度 make する。
$ cd CGIPython/ $ make ... $ ls -l cgipython -rwxr-xr-x 1 yusuke users 9911180 Jan 23 21:21 cgipython
ldd
してみよう。"not a dynamic executable"
と表示されたら成功。
$ ldd cgipython not a dynamic executable
strip
すると 7MBytes ぐらいまでちぢむ。
$ strip cgipython $ ls -l cgipython -rwxr-xr-x 1 yusuke users 7232680 Jan 23 21:23 cgipython
CGIPython/makecgipython.py
の修正が必要なかんじ。
Modules/Setup.dist
のさらなる修正も必要なかんじ。
こんなことやってないで早く帰れよお前は!!!
Modules/Setup.dist
であらかじめ uncomment しておかないといけない。
ちゃんとドキュメント読めよお前。そしていい加減もう帰れよ。
SSL や Kerberos5 まで入れて static にしたら、strip した状態でも 9MBytes を超えるバイナリになった。 ヤバイよ、ヤバすぎる! まあ、Mozilla を static にしたらこんな感じだと思うけど。
$ file cgipython cgipython: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, statically linked, stripped $ ls -l cgipython -rwxr-xr-x 1 yusuke users 9037120 Jan 23 22:35 cgipython
「このまま大学に泊まーるってのはどうよ?」
という悪魔の声が脳内にこだまするのでありますが、 驚くべきことに新山はこっちに来てから一回も大学に泊まったことがない。 いや、たぶん…。このあいだの 2人はしょっちう泊まっていたようだが、 オレはたいていいつもシャワーがあびたくなって帰ってしまう。 帰るなら今のうちだ! でもでも…
(つづく)
と、いうわけなんですよ。
学生がラクだなどと思っちゃあいけない。
個人的な感覚だが、こうやってありのままを書いていられるのは、 「新山からじゅうぶん疎遠な人」にとっては、この日記がほぼ完全なフィクションとして 読めると思うからである。そうでない人間に読むなというつもりはないが、 そういう人は出歯亀あつかいされてもしょうがないと思う。 この日記は誰かに何かを伝えるために書いているわけではない。
プログラミング言語の設計は、機能の上に機能を積み重ねることによってではなく、 追加の機能が必要であるかのように思わせている制限を取り除くことによってなされるべきである。同じことはソフトウエアの設計と拡張についても言えることだと思う。R5RS 序文 (Suzuki Hisao 訳バージョン)
ソフトウエアの拡張は、機能の上に機能を積み重ねることによってではなく、 追加の機能が必要であるかのように思わせている制限を取り除くことによってなされるべきである。でもこのアプローチがあまり生きていないのはなぜ? やっぱり、「報われないから」という結論になりそうな気がする。
ところで長野県民なら「♪しっらかーばりっぞぉーと、いけのだいらほてーる」 という CM を知っているはずだ。周囲に長野県出身がいないので確かめようがありません。
キリスト今日嫌いなくせに音楽だけはちゃっかり利用する新山。INSPIRATION: Spiritual Awakenings - The Power of Gospel Music A Gospel Brunch Sunday, February 1, 2004 11:00 a.m. - 1:00 p.m. NYU Catholic Center Auditorium 238 Thompson Street
しかしまた新言語か! まあ Lisp ベースだから新山的にはぜんぜんオッケーなのだが、 たまには今までの常識がまったく通じない革新的? 言語でプログラミングさせられてみたいものである。 Prolog や APL はだいぶヘンだが、あれを使ってある程度の仕事をやらされたという経験は今のところまだないからな。
で、あしたは Honors OS と Rapid Visualization か。 最初の週はなにかといそがしい。今日は結局 LUG のミーティングにはいけづ。 でも授業に嬉々として出ていると学生としてのシアワセを感じたりもする。
こういう考えって周期的にやってくるよね。
眠くなってきたのであと書けない。
(で、結局、なにが言いたかったんだろう? やっぱり眠いらしい)