フォントをスケルトン化するアルゴリズムを作っている。今日までの成果は以下のとおり。
鬱 量 あ
画像では省略されているが、画像の各点は深さ情報を持っている。深さを展開する(点を中心とし深さを半径とする円を塗り潰す)と、線の太さについての情報が復元される。ただし、ハネやトメなどはかなりいい加減になる。特に鈍角のでっぱりに弱い。
この先は、
1. 点からストロークを抽出する。
スケルトンで不連続に見える部分や、他のストロークと重なっている部分は、1次直線と最小二乗法で外挿して云々。
2. 各ストロークの重みを決定する
ストロークに外接できる円の直径を云々。
3. 12×12のグリッド上に、垂直・水平の直線のストロークを配置する
重み順に配置して、字のバランスを崩さないよう引っ張ったり縮めたり云々。
4. 12×36のグリッド上に、残りのストロークを配置し、全ストロークを展開する
色の偏りが生じないように云々。
――となって、サブピクセルレンダリングの12ドットフォントができあがる。
それにしても、絵の出るものを作るのは楽しい。
Javaをぺちぺちといじっている。とりあえずpbmファイルのフロントエンドを作った。
画面の狭さやキーボードは一向に苦にならないが、JavaVMの初期化があまりにも遅いのと、jdbがなぜか動かないのは耐えがたい。
今月号の少年エースの、西川魯介「なつめヴルダラーク!」が百合である。
不要な男が出てくるのが惜しまれる。
NetBSD/hpcmips + Emacs 20.7(SKK) + Kaffe + Jikes + w3m
+ エロゲーの環境が完成した。さらにJava APIリファレンスのサブセットも入っている。そのかわりJDEを切った。
128MB CFの残り容量が7MB。
表示行数が20行。
Hello Worldのコンパイルに5秒、実行に10秒。
というわけで、Java言語を触っている。
ごく一部にしか通じない表現をすれば、代官山系の言語である。「本物のプログラマはJavaを使わない」というパロディが出てきそうだ。検索してみたが、とりあえず日本語版はないらしい。
ボーイズラブはいままでなにかと百合の役に立ってくれたが、そろそろ死んでもらうほうがいい、との判断に傾きつつある。
少なくとも、問題はやるべきか否かではなく、いつやるべきか、だ。計画の概略は以下のとおり。
・目的:
ボーイズラブの隊列を乱し、有能な人材を百合に引き寄せる
・目標:
ボーイズラブをSF化する
ボーイズラブの隊列を乱す――すなわち、百合周辺から安全牌を取り除く。
人が安全牌へと傾くのは人情であり、責めるわけにはいかない。なすべきは、安全牌をなくすことである。
この10年間で、ボーイズラブは急速に安全牌としての地位を築いた。しかし急速に築かれたものは急速に壊される。レディコミの歴史がそれを教えている。「サザエさん」の堅塁に傷ひとつでもつけるような攻撃など想像もつかないが、ボーイズラブの隊列はちがう。正しい情報と堅固な意志、そして的確な手段があれば、大混乱を起こすことができる。
目指すべきは完全な殲滅ではない。安全牌としての地位を失い、キャッチフレーズとしては忌まれる名前となり、しかしその内部では一定の豊かさを保つジャンル、そう、SFのような存在にすることが求められる。
ところで、ボーイズラブをSF化するにあたっては、今川編集長が一人、大森望が一人要る。今川編集長はS氏やA氏でいいとして、大森望が見当たらない。うーむ。
・戦略:
ボーイズラブのイデオロギー「強姦されてハッピーエンド」を言挙げしてオタク界の共通認識にし、イデオロギーとしての魅力を減じさせる
・戦術:
実証にもとづく評論本の作成・頒布
マルクスの「資本論」が攻撃した資本主義の諸問題は、当時すでに資本主義自体によって克服されつつあった問題だった。これは思想家マルクスの失敗だったが、革命家マルクスの成功でもあった。
真に大きな問題は、それが克服されはじめないうちは、問題として認識されない。思想家の仕事は、真に大きな問題を、それが克服されはじめる前に認識することだが、それでは革命はできない。人々が認識できない問題をとりあげても、人々は理解しないからだ。
「強姦されてハッピーエンド」イデオロギーは、いまや克服されはじめている。男女物にまで広がろうとしていること、出来の悪いボーイズラブがイデオロギッシュになっていること、鈍い私までもが認識していることなど、あらゆる徴候がみられる。ボーイズラブの隊列を乱すには、この問題に攻撃を集中するのがもっとも効果的と考える。
いままで認識していなかった問題を認識することは、世界観を構築することに等しい。経験という荒削りな材料だけから世界観を組み上げるのは難しいので、数字や一覧表などの優雅な材料を提供しなければならない。
日販調べのベストセラーリストに入ったボーイズラブ小説の内容を、その順位と照らし合わせて分析することで、「強姦されてハッピーエンド」イデオロギーを数字として抽出する。ボーイズラブ小説の対象群として男性向けのポルノ――これが少々難しい。相手がリーフ出版だけならエロゲーのノベライズがお似合いだが、花丸ノベルズの対象群としてはどんなものか――を同様に分析し、「強姦されてハッピーエンド」イデオロギーとボーイズラブの相関性を示す。
読むべき本がせいぜい200冊で済み、しかも大半がブックオフで入手可能なので、イデオロギー自体の性質について論じるよりは実行可能性が高い。しかし――半年で200冊。ソ連漬けの次はボーイズラブ漬けか。うーむ。
今日の表現:
・「『B型同盟』の2巻と同じくらい出る可能性もなければ理由もない」
・「『アーシアン』6巻が出るのとどちらが先?」
そういえば以前、今年中に「アーシアン」6巻が出るというような情報をいただいたような気がする。もちろん、本当に出るなどと思うほど初心な私ではない。
最近リファラーのログを見ていて気がついた。キーワード「エッチなまんが」でヒットする件数がやけに多い。
いま、gooのサイト検索で「エッチなまんが」を検索すると、たった2件しか出てこない。そのうちの一件が本サイトである。
「エロまんが」という言葉も知らない、いたいけな子供たちを直撃しているかと思うと、怪しい笑いが止まらない。皆さん、私のような大人になってはいけませんよ?
NetBSD/hpcmipsでやれるエロゲーということで、「鎮花祭」なるエロゲーを手に入れた。MC/R330のモノクロ画面に320×240ドットで表示される、いたる並みにアレな絵(とはいえ、いたる同様に魅力はある)が、チープといおうかシックといおうか。
例によってやたらに女っ気まみれの環境に暮らす主人公を見ていると、ボーイズラブの千篇一律を笑えない。男友達が例によって格好よさげでいい人風なあたりがまた。うーむ。
iモードJavaコンテンツ開発のインサイダーと話す機会があったので、インサイダー情報を少しばかり仕入れてきた。忘れないうちにメモしておこう。
・メソッド呼び出しを徹底的に避けるのはよくない戦略
セキュリティ周りで面倒なことになっていて、ローカル変数を使うほどコストが大きくなるらしい。少数のローカル変数を使い回す――中世BASIC!
・最適化を意識してバイトコードを書ける高級言語はない・使われていない
インラインアセンブラを作って使っているという。Sunが「Javaの純潔を汚すな」と激怒しそうなことがしたくてたまらない私としては不満だ。
・jsr / retを使うのはヤバげ
プリベリファイアで展開されてどうのこうので問題があるらしい。
というわけで、ローカル変数がセイント・フォーに収まるよう注意しながら簡潔に書き、それで足りなければアセンブラでなんとかするのがいいらしい。
携帯電話への小説の有料配信がついに始まってしまった。
「パケ代が高すぎる」「FOMAのエリアがなかなか拡大しない」などと言っているうちに出遅れた。が、敵はiモードではなくEZwebを使っている。ということは横書きの組み込みフォントだ。ファンシーな機能もない。このレベルならまだ対抗できる。
こちらの機能は縦書きとサブピクセルレンダリングのフォント、看板は青空文庫だ。プラットフォームがFOMAなのが少々厳しいが、1年後にはツーカーに対抗できるはずだ。
小Jの献本が届いた。
前回も思ったことだが、私の小説に挿絵をつけてくださったかたは、まさかJUNE編集部からの仕事で女を描かされるとは夢にも思っていなかっただろう。ご協力ありがとうございます。
NetBSD/hpcmipsからWindows 2000の着信接続につなぐ方法が、やっとわかった。
・Windows側の設定
「ネットワークとダイヤルアップ接続」から、「新しい接続の作成」を起動、「ほかのコンピュータに直接接続する」→「ホスト」→「この接続に使うデバイス(適切に指定)」以下適当にやって、接続を作る。
上で作った接続が使うシリアルポートの通信速度を、115200bpsに設定する。
TCP/IPのプロパティから、「呼び出し元にローカルエリアネットワークへのアクセスを認める」をチェック、「TCP/IPアドレスを指定する」を選択、開始アドレスと終了アドレスを適切に指定する。192.168.0.1から254でいい。
・NetBSD側の設定
/etc/ppp/options.tty00:
115200
crtscts
modem
lock
/etc/ppp/peers/d:
tty00
noipdefault
defaultroute
idle 0
noauth
ipparam isp
connect '/usr/sbin/chat -v -f /etc/ppp/peers/chat/d'
/etc/ppp/peers/chat/d:
"" "CLIENTCLIENT"
"CLIENTSERVER"
・接続
Windows側で着信接続を有効にする。
NetBSD側で"pppd call d"とやる。
どこの設定が悪いのか、しょっちゅうバッファがオーバーフローするが、TCP/IPのご加護があるので問題ない。
しかし115200bpsは強烈に遅いのだった。頻繁に大きなファイルを転送するなら、母艦側でffsをマウントする方法を考えたほうがいい。
「Papa told me」26巻を読んでいたとき、ふと、PTMをアニメ化したらどうなるかを考えた。
時間帯は午後5時台かCSに入るとして、知世の声優は誰になるか。
………堀江由衣。
見たいような、見たくないような。いやむしろここは「見たい」と強く主張しよう。ここで後ろを見せてはいけない。
いまさらながら「千と千尋の神隠し」を見た。説教臭いところ以外は面白い。
「ナジカ電撃作戦」の西島監督には、伝説的なエピソードがあるという。「プロジェクトA子」を見た宮崎駿が、「セーラー服で機関銃持って走り回るようなアニメを作ってちゃいけない、こういうのが日本のアニメを駄目にする」と言った、のだそうだ。が、説教臭いのも同じくらい日本のアニメを駄目にするような気がする。
もうじき小Jの発売日でもあることなので、このサイトも少し手入れをしておかなければ。
MC-R330ではLinux-VRは、かなりカーネルをいじらないと使い物にならないので、NetBSD/hpcmipsに戻った。
NetBSDからWindows 2000の着信接続につなぐ方法が、相変わらずわからない。どこを見ても、「NetBSDをPPPサーバにしなさい。以上」ですませている。しかしそれではNetBSDからインターネットに出られない。うーむ。
iモードJavaのjarファイル最適化の方法が、おおよそ見えてきた。
・メソッドはひとつだけ、フィールドは使わない
たとえ同じインスタンスのprivateメソッドでも、メソッドを呼び出すのは容量的にも速度的にも高くつく。もちろんサブルーチンがないとプログラミングは不可能なので、関数はjsr
/ ret(中世BASICでいうところのGOSUB / RETURN)で作る。
よって、
・変数はすべてグローバル、最大256個まで
正確に数えれば、retするときreturnAddressを格納するために1個必要だとか、暗黙のオペランドが使える4個(仮にセイント・フォーと呼ぼう)は別扱いにすべきだとかで削られるが、とりあえず250個くらいは使える。
この状況でそのままマクロアセンブラを使って最適なコードを書ける、という人はあまりいないと思うので、適切な言語系が必要になる。少なくとも、変数の名前空間を処理したり、数式をスタック操作と演算に展開したり、セイント・フォーとオペランドスタックの最適な割り当てをしたりする機能が必要だ。
……というようなことを考えた人は、必ずいるはずだ。現にそういう言語系を作った人もいるだろう。探さなければ。
それにしてもiモードJavaとは実に中世風のプログラミング環境である。ビットマップ操作などという気の利いたものはなく、機種依存の強さは中世BASICにも匹敵する。起動の遅さはまるでテープからロードしているかのようだ。
(川澄綾子の声で)「兄くん………この携帯をごらん……………この、たった100gもしない箱にはね………………中世が…入って……いるのさ………」
これは終わりなのか? 違う、これは始まりなのだ!
世界はいま、Napster式の分散型CVSリポジトリを必要としている。私には到底作れないので、誰か作ってください。
最近ある友人が、「サバイブ」なる言葉をよく使う。「厨房がサバイブするために必要なSF」といった具合だ。
私は、このような用法での「サバイブ」という言葉に、「癒し」と同様の敵意を覚える。
もともとは、性的虐待に苦しめられた人間を「被害者」ではなく「サバイバー」と呼ぼう、という提案に端を発しているのだろう。このような用法での「サバイブ」とは、脅威との仮借ない対決姿勢を表明する力強い言葉であり、性的虐待を受けてアパシーに陥った人々を勇気づける言葉である。アメリカ的な正義の精神を感じさせて清々しい。
しかし、「厨房がサバイブする」とは何の意味か。
彼の用法を聞いていると、まるでアプリオリに「サバイブすべし」という命題が設定されているように思える。サバイブすべし――どんな脅威から? しかし脅威との対決のなかに「厨房」が入り込む余地はない。人は戦うとき、強いか、弱いか、どちらかでしかありえない。いったい誰が、生前のスターリンを「ドキュン」と言えただろうか? いったい誰が、十月革命前夜のトロツキーを「厨房」と言えただろうか?
もう一度、問い直そう。サバイブすべし――どんな脅威から?
私が答えよう。彼のいう「厨房」が対決している脅威とは、「世界を変えるべし」という真実だ。彼のいう「サバイブ」とは、「世界をどのように・いかにして変えるべきか」という問題から逃走しつづけることだ。
いついかなるときにも真実であるようなテーゼは、無数に存在する。別に珍しくもなんともない。「世界を変えるべし」というテーゼもそのひとつだ。いま世界は完璧であり一切の修正を要さない、と宣言できるのは死人だけだ。
その一方で、「世界をどのように・いかにして変えるべきか」とは、人類の永遠の難問(これまた珍しくもない)である。土地の標識をこっそり動かして隣家から土地を盗むのがいいか? 仕官の口を探して高級官僚を目指すのがいいか? それとも、身上をはたいて大放蕩をやらかしてヨーロッパの社交界を沸かせるのがいいか? 答を出せるのは当人だけだ。しかも、命あるかぎり常に一秒ごとに問い直され、答を求められる。
このような難問に対して、これは難問だからいまは答えられない、と認めるのは誠実な態度である。だが、「世界を変えるべし」という真実を棚上げにしようとして悪戦苦闘するのは、臆病で愚かしい。
その虚しいもがきを「サバイブ」と彼は言う。まるでそれが高貴で、必要欠くべからざる行為であるかのように。私はより適切な呼び方を提案する。「ヌルむ」だ。「厨房がヌルむために必要なSF」「F&Cのヌルエロゲーでヌルむ」――それは悪ではない。だが必要でもなく高貴でもない。聖書によれば、熱くも冷たくもないものには天国の扉は開かないという。
「厨房」がヌルむのは彼らの勝手であり、私の指図を受けるいわれはないだろう。それと同じように、私も自分勝手なことを言って行動する自由と理由がある。
ヌルんでいる人々を叩き起こし、革命を焚きつけ、客観的知識、世界観、そしてなにより必勝の信念を与え、行動へと向かわせることが私には必要だ。もし彼らのヌルみを「サバイブ」と呼べば、ヌルむことがなにか積極的な行動であるかのごとき印象を与え、私の行動の邪魔になる。よって私は、ヌルむことを「サバイブ」と呼ぶことに徹底的に反対する。
…と、ここまで書いてきて思ったが、世の純真な子供たちは、「革命は有罪だが、歴史もまた有罪である」(トロツキー)という確信に欠けているのかもしれない。
彼らは少コミCheese!を毎月読むべきだ。そうすれば彼らも、歴史の有罪と自分の自由をきっと理解するだろう。
「Java仮想マシン仕様 第2版」をだいたい読んだ。
「オペランドスタックどうよ」「floatとdoubleの2本立てってどうよ」等々、いろいろ思うところはあるが誰でも思うことなので言わない。文句を言っても替わりはない。選択の自由がないところに善はない(アレクサンドル・ヤコブレフ)とはよく言ったものだ。
Linux-MCを入れてみた。
開発者が愉快な人のようで、MC-R330でLinux-VRカーネルをそのまま使うと、黒地に白で表示される。コンソールは黒地に白であるべきだという、固い宗教的信念をお持ちなのだろう。
サスペンドしてみると、画面全体が黒くなった。これまた宗教的情熱を感じる挙動である。マシンが止まっているとき、画面は黒くなくてはならない――まことに敬虔な信仰ではないか。
ただ問題は、液晶は白いときよりも黒いときのほうが余計に電力を消費している、という点にある。
ちなみに上では簡単に「サスペンドしてみると」と書いたが、これにも紆余曲折がある。R330(=R320)では、最新版のカーネル(vmlinux-R320-010804.tgz)はサスペンドするとPCMCIA周りでおかしくなってレジュームに失敗する。000823でないと通らない。
まずはカーネルをクロスコンパイル、と思って、linux-vr.sourceforge.netに行こうとしたらconnection
refusedだった。こちらはどうかと思ってoss.sgi.comにftpしてみたら、これもconnection
refused。生きているミラー(http://ftp.linux.cz/pub/linux/sgi)から必要なものは落とせるので、特に困らないといえば困らないが、嫌な予感がする。
実際にいろいろ触ってみると、Kaffeとgcjが動く以外は全面的にNetBSD/hpcmipsのほうが上のような気がする。特にサスペンド関係は圧倒的だ。それでもLinux-VRにせざるをえないのだから、まったくRMSの言うとおり、ユーザランドはカーネルよりも重要だ。
KaffeをNetBSD1.5.2/hpcmipsで動かせるのかどうか、危ぶんでいる。
gcc-3.0.2がうまく作れなかったので、かなり嫌な感じがしている。pkgsrcからgcc-2.95.2を作ろうとしても失敗した。Kaffeがだめでもgcjがある、と思っていたのに、雲行きが怪しくなってきた。対するにLinuxは、mipselのrpmが作られている。LinuxにあらずばUNIXにあらず、の世の中らしい。
NetBSDがこれほど冷遇されていると知っていたら、Linux-MCにしていた。そうと知れた以上、さっさとNetBSDとは縁を切ろう。
だいたい、ユーザランドのクロスコンパイルのやり方がさっぱりわからない時点で手を引くべきだった。独自に手を加えまくったと思しきegcs-1.1.2を、ソースツリーの中に見つけたときには眩暈がした。徴候はいくらでもあったのだ。
今日のテーゼその1:
「強姦されてハッピーエンド」イデオロギーは、赤瀬川原平の「老人力」である。
今日のテーゼその2:
「癒し」から革命へ
コバルト・ノベル大賞、ではなく集英社ノベル大賞への応募は、3次選考で蹴られていた。
3次で蹴られるのは一次で蹴られるより痛い。しかも、選評をみるだに駄目な百合が、最終選考に残っている。うううう……… アニキ………… きゅう。
Windows XPの深夜発売キャンペーンは、頭が痛いを通り越して、恐ろしかった。
私はオサマ・ビン・ラディンのような脅威よりも、こちらのほうがはるかに恐ろしい。無知無関心の右に倣えであの場に集まったマスコミ、ろくに人が集まらないのは最初からわかりきったことなのに深夜の行列を企画したパソコン店とMSKK。バブル時代が終わって10年、人々はバブル時代よりもさらに馬鹿になっているのかもしれない。
アンチWindows XP、アンチ・アクティベーションの集会でもやったほうが、はるかに盛り上がっただろう。こんな具合だ――
(アジテーターは二本の指を振り上げて)「けっしてWindows
XPを買わないと誓うか? プリインストール・マシンを買わないと誓うか? Windows
2000を使いつづけると誓うか?」
(群集も二本の指を振り上げて)「誓うぞ! 誓うぞ!」
ついでに、アンチSDカードとアンチ・メモリースティックもアジってほしい。
「けっしてSDカードを買わないと誓うか? メモリースティックを買わないと誓うか? Fresh
Musicを、Kana2000を使いつづけると誓うか?」
「誓うぞ! 誓うぞ!」
こんな集会があればぜひ参加したいので、誰か企画してほしい。
gcc-3.0.2をmakeするためのメモ。
問題1:gcc/MakefileのUSE_COLLECT2への代入をコメントにして取り払う必要がある。
問題2:そのままconfigureしてできたものは、PICとnon-PICがどうのこうのと言われて使えない。
それにつけても本当にmakeの遅いマシンである(クロスコンパイルは途中で断念)。CPUは486DX2-66MHzより速いはずなのに、メモリも16MBあるのに、ストレージが遅いとこうも遅くなるとは。
NetBSD/hpcmipsのコンソールでEmacs-20.7を使うと、どうしてもMetaキーが入力できない。世のNetBSD/hpcmipsな人々はみなXを使っているのだろうか。
ここしばらく、makeできないKaffeとにらめっこしつつ、Javaに関する情報を集めていた。
いきなりだが結論である。Javaは駄目だ。
なぜ駄目か。Sunはマーケティング上の大失敗を重ねすぎた。マーケティング上の大失敗1つは、深刻なセキュリティホール1000個、プログラマの呪詛100万回、マスコミの酷評10億語を全部合わせたよりも重い。
第一の失敗は、人々をJITという泥沼に導いたことだ。JavaVMのJIT、それはつまり、「クソ」を意味する。
JITは比較的簡単に実装できる――遅くて、いい加減で、メモリを大食いしてもかまわない、という条件付きなら。3条件のうち2条件ですませるのは、やや難しい。1条件ですませようとすると、かなり困難だ。無条件にしようとすると、不可能への挑戦になる。
JITはプラットフォームに強く依存する。CPUだけでなく、OSにも強く依存する。JavaVMの謳い文句だった「write
once, run anywhere」は、JavaVMの移植性なしに実現されるわけがなかった。違う人間が書いたJavaVMはそれぞれ違うJavaVMであり、クラスファイルを移そうとすると、かなりの確率で移植作業が必要になる。
JITが話題になったとき、Sunはただちにそれをこき下ろすべきだった。Sunが導くべき方向は、AOTだった。AOTのコンパイルはかなり遅くてもかまわない。そしてJavaVMの仕様からして、UNIX流の乱暴な手口が使える。すなわち、バイトコードをいったんANSI
Cに変換し、これをコンパイルしてネイティブコードを生成する。ANSI
Cのコンパイラなら、ほとんどあらゆるプラットフォームに存在する。
この方式のAOTのほうが、満足できるJITを数多くのプラットフォームに実装するよりも、はるかに簡単だった。CPUやメモリの問題でこの方式のAOTが実装できないようなプラットフォームでは、JITも実装できない。さらに、RISCを効率よく動かすコンパイラの開発という難問を、避けて通れるというメリットもある。
SunのJavaVMのようなよくできたJITは、よくできたイースターエッグのように優雅だが、同じくらいくだらない。Javaはもっと遠くを目指したものだったはずだ。
第二の失敗は、Java APIの必須要件を小さく簡潔に保たなかったことだ。適切な位置に引かれた線は、ただその位置が適切であるというだけで、大きな力を持つ。PersonalJava、KVM、Java2、プロファイル、サーバサイドJava――こうした呼称の乱舞は、Javaの成功ではなく失敗の証である。
第三の失敗は、「Javaの純潔を汚すな」とでも言わんばかりの態度を隠さなかったことだ。MSとの法廷闘争は、Sunの党官僚的な性格を天下にさらけ出した。判決はSunの自尊心を満足させたが、損失は莫大だった。善意と寛容を装うべきだったのだ――スターリンのように。
JavaVMもJava言語も、すぐには消えない。しかし、すでにCOBOLやITRONの仲間入りをした。かつて持っていた可能性を使い果たした、という意味で。
Kaffeは問題3まで解決したところでmakeは通るようになったが、実行しようとするとInternal errorを吐く。とりあえずgccを3.0.2に上げて試してみる(現在はegcs-1.1.2)。
Kaffeのmake。
問題2(続き):
どうしてもkaffe/kaffevm/locks.cが通らない。インラインアセンブラで書かれたmovnを、GASが通さない。binutilsを更新してもダメなので、きっとKaffeの側のバグなのだろう。Linux-VRがどうやってここを通しているのかと思ったら、まったく同じようにひっかかって回避していた。
よってKaffeの側で回避する。config/mips/common.hにあるCOMPARE_AND_EXCHANGEというマクロの定義を、HAVE_MIPSII_INSTRUCTIONSの有無で変えているので、これを適当に始末して、インラインアセンブラ版を使わせないようにする。
問題3:
どうもNetBSD側のバグのような気がするが、config/mips/jit.hのcacheflushの前にアンダースコアがないとリンクできない。
冬コミに当選した。スペースは(日)西た21b、出口壁は遠い。
そろそろ印刷のタイムリミットなので、活動を始めなければ。新刊は300部オフセット。表紙は……うーむ。透明プラスチックシート表紙をやってくれそうな印刷屋が見当たらない。
現在の再版予定:
・「旧世界秩序」50部 今度の表紙はソ連が赤い!
・「小春日和情報」「小春日和計画」各50部 表紙の新案を検討中
・「ギャル理論による『小春日和情報』」30部 変更なし
マザリシャリフが陥落した。
タリバンがあれほどあっさり土俵を割るとは、かなり意外だった。このあとはもう春まで大きな地上戦はできないし、春になれば力の差が開き、タリバンの戦力など無意味になる。
アパッチに威張られては手も足も出なくなる(10月13日の日記参照)、という判断のほうが正しかったらしい。アメリカがやってきそうなことは全部わかっていたはずのタリバンなのに、ほんの数機のアパッチに対してなす術がなかった、ということになる。
戦争しか知らない子供たちのシーズンは終わった。これからは、かつてソ連軍に対して立ち上がり、その結果アフガンを地上の地獄に変えた反動主義者たちの季節だ。
そういえば、ムジャヒディン援助の倫理的責任を問う声は、どこにあるのだろう。
どうして誰も、声を大にして言わないのか。ムジャヒディンを助けるべきではなかった、と。あれは自由の戦士への友情などではなく、「敵の敵は味方」の論理でしかなかった、と。主なものだけでも8派にもなるゲリラ各派にそれぞれ援助したのは、ソ連軍よりはるかに悪いものをアフガンに持ち込むことだった、と。
そしてなにより、ゲリラを援助することは絶対悪である、と。
私はレーガンを許さない。
「クンフーが足りない」とはどういう状態かと考えていたところ、アレクサンドル・ヤコブレフの「マルクス主義の崩壊」(サイマル出版会)81ページにそれを発見した。
「(マルクスが)普遍的で包括的な歴史過程理論を創りだそうという野心をもち、社会知識や弁証法の可能性に対する疑念を欠いていたことが、経験的な現実の多くの面を単純化し、中世の実在論を復活させることになった。
歴史の秘密は発見された、という確信が、歴史法則を記述する概念やカテゴリーの存在論化を招いた。多くのマルクス主義者たちにとって、共産主義的社会構成体[発展段階]の学説とは、現実の共産主義的生活より重要で意義深い現実にほかならない。レーニンが晩年、理念と事物の区別がつかない共産主義者たちと闘争を繰りひろげたのも決して偶然ではない。」
「中世の実在論」「概念やカテゴリーの存在論化」「理念と事物の区別がつかない共産主義者たち」。かつて、まさに文字どおりのものが存在した。古いゴリゴリのマルクス主義者が事物を扱おうとした文章を、一度でいいからご覧になるといい。そのイデオロギッシュな盲目ぶりは、ボーイズラブも真っ青だ。
程度の差こそあれ、クンフーの足りない人間は、この種の存在論化の罠に容易に陥る。彼らはあらゆる事物、つまり死のほかの一切に、根源的な恐怖を抱く。彼らは理念によって事物を覆い、覆いきれない事物を存在しないものとして扱うことで、恐怖から救われようとする。
問題は、クンフーの足りない人間をなくすことはできない、という点にある。彼らにどうやって少しでもマシな行動を取らせるか、きちんと考えてゆく必要があるだろう。
Kaffeのmakeについて。
問題1:
config/mips/netbsd1/md.hで定義されているマクロ2つが矛盾している。sigcontextをポインタで扱っているのに、sigcontextのメンバにピリオドでアクセスしようとしている。ポインタが間違いか、ピリオドが間違いか、二者択一である。どちらが正解かは、signal関係のコードをテストしてみないとわからない。
問題2:
NetBSD1.5/hpcmipsが使っているバージョンのbinutilsあるいはegcsにバグがあり、ありえないはずのエラー(mips4に対応していることを明示的に教えても、「mips4が必要だよ」と抜かす)を吐く。現在、1.5.2に差し替える準備中。
Kaffeのmakeで詰まっている。
kaffe/kaffevm/systems/unix-jthreads/signal.cが、「構造体じゃないものにsc_regsなんてメンバを要求してるよ」と抜かすが、インクルードをたどってゆくと最終的に/usr/include/mips/signal.hで定義されているような気がする。どこかでインクルードパスをとちっているに50ガバス。
SKKを体験した。
発想は素晴らしいし、格好いい。が、しかし…
この「しかし」感こそ、UNIXの真髄のような気がする。
今日のソ連:
ウラジーミル・ツベートフの「竜安寺の15番目の石 ソ連が日本に学ぶもの」(サイマル出版会)、1991年6月校了。
まえがきから驚かされる。この本は最初、ソ連国内で1986年に出版された。出版社はポリトイズダート。ソ連全土の本屋をイデオロギーの紙屑で埋め尽くした、党中央委の出版社である。
ポリトイズダートの本が日本の出版社で邦訳されることも異例だが、問題のくだり――「一九九一年一〇月、内容を大幅に刷新して、ポリトイズダートから改訂新版二〇万部が出版される。日本語版は、この最新の改訂新版原稿の翻訳である。」
1991年8月、党中央委は閉鎖された。
この本で描かれている日本は、1980年から90年あたりまでの、バブルのどん底へと全速力で突進した糞馬鹿日本である。イデオロギッシュな筆致で描くために作られたような題材だ。さすがに1991年ともなれば、マルクス・レーニン主義のドグマは言い訳程度にしか出てこない。そのぶん、バブル日本の生活の暗い面を、より的確に描き出すことに成功している。
毎朝体操をして社歌を歌い、下請けを容赦なく苛め抜いたあげく、株や土地で1000億円単位の金が気持ちよく消えてなくなった。人生はこうでなければ――自分で実行するのは御免だが。
「従業員がすべてを決める!」とは松下電器の社是だそうだが、これはスターリンの掲げたスローガンでもあったという。いい話だ。
ところで、この本を読んで久しぶりに、「新人類」なるものを思い出した。彼らはいまごろどうしているのだろう。SPA!でも読みながら、バブル入社の部下を馬鹿にしているのだろうか。
立花隆はトンデモを見分ける能力に欠けると聞いたことがあるが、強烈な実例を発見した。週刊文春11月8日号、140~141ページの「私の読書日記」である。
文末の一段落から引用する。
「著者は、べん毛モーターの研究を二十年以上にわたってつづけ、多くの業績をあげてきた研究者で、この長年の疑問がいよいよとけそうなところまできているという。そのエネルギー源は、おそらくブラウン運動(水分子のランダムな熱運動)だろうという。ランダムな運動からいかにして一方向の回転運動をとり出すかが最大のナゾだが、それは、一方向の運動だけを許し反対方向の運動は許さないラチェット(かけ金)構造があるからにちがいないといい、そのしくみを利用した回転運動体はもっと沢山あって、これは生命の基本構造にちがいないという。」
この文章にあきれかえらなかった人は、理系ではない。
だいたい、「生命の基本構造」などというトンデモ・キーワードが飛び出したあたりで怪しいとは思わなかったのだろうか。こういうキーワードにピンとくる能力を、教養という。
眠い。きゅう。
NetBSD/hpcmipsは、ネットワークブート環境でEmacs(Xlib抜き)+MGL2まで到達した。いらないelispファイルの消去リストも一応作った。SKKとKaffeとJDE(動くのか?)を入れて動作を確認したら、MGL2およびMGL2と依存関係のあるpackageを固めて、CFに入れる準備である。
なにをどうひねっても、Emacs+MGL2+Kaffe+JDEは64MBのCFには収まらない。きゅう… 圧縮ファイルシステムはまだか? CFの速度とCPUの速度から考えれば、圧縮を展開するほうがスループットが高くなるはずだ。
「素敵」を「索敵」と見間違える、というネタは昔からよくあるが、小さいフォントだと本当に区別がつかない。素敵:索敵
NetBSD/hpcmipsのネットワークブートに成功した。
結論:NFSはクソだ。
女神転生のX-BOX版が音声認識になるとの噂を聞いた。
音声認識はゲームを格段に面白くしてくれるはずだと、私は確信している。音声認識の恋愛シミュレーションなど、考えただけで怪しい笑いがこみあげてくるではないか。呪文を暗唱するRPGもいいし、僚機と無線交信する空中戦もいい。
普通の人間なら一生言う機会がないようなことが言える、そこがミソだ。ただ読み上げるだけなら独り言だが、ゲームの進行に反映されるなら独り言ではない。
だから私は、次のようなセリフを叫ぶゲームが出てきたら、ぜひやりたい。
「トロツキスト! トロツキストめ!」
「同志スターリンと共に前進!」
「アルジェリー・フランセーズ!」
「鋼鉄の霊将×××将軍万歳!」
しかし考えてみると、こんなセリフを叫ばせるゲームが出てくるよりも、現実にこんなセリフを叫ぶ機会に出くわすほうが、まだ可能性が高いかもしれない。
北部同盟がまたしても逐次投入の愚を犯している。攻撃を退けられて大損害がないのだから、へっぴり腰の、おどおどとした攻撃だったにちがいない。マスードのいない北部同盟はやはりこの程度か。
北部同盟自身には急ぐ理由はほとんどないので、アメリカに尻をつつかれたのだろう。そのアメリカはといえば、B52でやっつけ仕事をして済ませている。アパッチはどうしたのか、AC130はどうしたのか。世界で初めてイージス艦を撃破し、マンハッタンに世界史的な屈辱を叩き込んだ強敵と戦うのに、10年以上も前に作られた携行SAMのたった数十発が怖いのか。
一枚岩で、非妥協的で、持てる力の全てを惜しみなく費やす者に味方するのが戦争の神である。現在の戦いぶりを見ていると、オサマ・ビン・ラディンが勝利する可能性もあるのではないかとさえ思えてくる。
FreeBSDのサイトから、FreeBSDハンドブックのPDF版、handbook.ja_JP.eucJP.pdf.tgzを持ってきて、中のPDFファイルを、Acrobat
Reader 4.0日本語版で開いた。
EUCで文字化けしていた。
UNIX関係のサイトを調べていると、どれもこれもEUCかJISでエンコードしているのが頭に来る。IEがすぐに文字化けすることを知ってか知らずか、申し合わせたようにEUCかJISになっている。さらにまた、Googleがエンコードなど無視してSJISを挿入するので、Googleのキャッシュから読むとほぼ確実に文字化けする。そのたびに右クリックしてエンコードを調整するはめになる。
個人のサイトなら、エンコードがどうだろうと個人の趣味なので、いくら私が頭に来ても知ったことではないだろう。「GoogleとIEが悪い」と主張しても、なにもおかしくない。私の趣味とは正反対の主張だが、おそらく私と彼らの趣味は実際に正反対なので、なにも問題はない。
FreeBSDのドキュメント配布も趣味といえば趣味なので、たとえPDFファイルがAcrobat
Readerで読めなくても、知ったことではないのかもしれない。おそらくGhostScriptでは読めるのだろう。が――しかし。