Whiteのふりーとーく

2001年11月前半

About this Page |過去分一覧


原則匿名で公開・個人情報は送られません。必要に応じ御署名/非公開希望をお書き添え下さい。


_ 掲示板:YaPW 旧掲示板 SMIL Boston日本語訳(頓座)



11.2

@

乗車姿勢の見直しなぞして、会社まで1時間を切ってみる。ただし、疲れる。今の体力だと毎日はもたないこと必至。

@STL

先輩が他人の書いたC++のコードに苦しんでいたのにつきあって、STLのごくごく簡単なお勉強。

なるほど、確かに便利そうなものだが、「できる範囲で行なった最大限の妥協点」って感じもする。後付けのわりにはよくできているが、先に作るなら絶対にああはなるまい。


11.4

@捕捉確認

紗希音ちゃんアンテナからの捕捉を確認しましたです。よろしく〜。

@

STL話にツッコミ。

STLは全部ヘッダファイルなので書き換えられるという後付ならではのメリットもあるのでは?

書き換えちゃうのはテンプレートの使い方としてはどうよ、と思ったりもするのですがそれはともかく。

なんちゅうか、関数オブジェクトを作ってオブジェクトを突っ込む、というやりかたが、C++本来の思考法と逆行している風味なのが「絶対にああはなるまい」だと思うのです。

_STL自体はまさしくクラス指向の利点を利用したものですが、それをSTLって名前で(プログラマの思考から)ラッピングしてしまうのが問題。結果として、C++ + STLって環境は、クラス指向メソッドと、STLメソッドという、2系統のオブジェクト操作インターフェースを持つようになる。

で、直交概念を両方包含すると、思考の混乱を招く要因になるように思うのです。

_もちろん、それによるメリットがあるのは否定しません。ただ、STLの概念を把握せずに、STLという環境だけが利用されてしまうと、全体としてひどく混乱した言語系になってしまう。で、それはミスを招きやすかろう、と思うわけです。

_まあ、世の中にはPerlという出鱈目なプログラム言語が存在していたりもするので、一概に悪と言う気はありません。綺麗に単一概念しかないシンプルさが仇になる場合もあるわけだしね(^^;


11.6

@very cheap Linux

先輩に「プロセス終了時のメモリ解放ってどうなってるのかのう」とか言われてカーネルソースを覗きはじめたのがきっかけで、気付くと4mb Laptop HOWTOなぞ読みながら、ThinkPad220用のカーネルをガリガリと構築させ始めたり。おかげでさんざ脱線していた仕事が本道に戻ったと言う副作用も。

_考えとしては、中座しているシリコンディスク化の一環としてである。目論見は、Software SuspendとReiserFSを両方入れて、ということで、ReiserFSパッチを当てた2.2.19のソースに2.2.18用のSoftware Suspendパッチを強引に当て、とかやっているわけだ。が、zImageにするには大き過ぎるとエラーを吐かれる。

ThinkPad220では、bzImageでは起動しやがらないはずなので、どうしてもzImageに収めねばならない。試しにReiserFSサポートを外すと文句もなく終了。bzImageで試して玉砕するか、2.4系だと小さくなるかもなどとおよそありえなさそうな期待をしてみるか。ちなみに削れるものは尽く削っている。フロッピーディスクのサポートすら外している。

ところでおよそ現実的な回答は、ThinkPad220ではありがたみのないであろうSoftware Suspendを外すことであろう。一応は試しに使ってみて、具合を確かめてみるのがよいか。

@責任価格

某杜の恥ずかしさ全開。ものの値段がどうやってつくものなのかすら知らんというのはどうか。安物は安物の責任しか取らないし、高価なものは高価なものなりの責任を取るものなのだ。そんなの学校じゃ習わなかったって? 世の中で生きてれば薄々気付くことじゃないのか?

これはもうオンラインソフトがどうこうとかいう次元ではない。無知を知れ。

@very cheap Linux(2)

ところでReiserFS + Software Suspendなカーネルは、PCIバスのサポートを外したらzImageでも作れました。……ThinkPad220は、およそPCIバスなぞ積んでいないでしょうから、多分問題はないでしょうが。他にはちっとも応用が効かなさそうな勢い。


11.7

@

Soutware Suspendを入れるつもりなら、 東芝Dynabook SS3010 でのHibernationが参考になるかもね、とどこへともなく言ってみるテスト。

@very cheap Linux(3)

240MBのHDDで動いている実機に、makeの成功したPCIサポートなしカーネルを入れる。pcmcia-csも入れる。再起動して、無事動いているのを確認。これで問題は、suspendが動くかどうかに絞られてきた。

で、試す。うまくいかない。ちゃんとアンマウントしてないと怒られてfsckの長いチェックを待たされて。で、動き出したと思ったらlibc5.so.1が見つからないとか怒られる。強引に電源切って再起動すると復旧。

どうやらresumeが中途半端にしか成功しないらしい。2.2.19に2.2.18のパッチを強引に当ててるからなのか、それとも別の原因があるのか。要調査。


11.8

@

会社から帰ってきて、録画しておいたサッカーの日本-イタリア戦。

前半の日本代表は、まるで知らないチームのよう。立ち上がりが激しいとか、カウンター気味の速攻ができるとか。相手のコンディション・モチベーションが低いのは確かであるが、こりゃ別物である。

違うと言えば、稲本。元々押し上げたときの攻撃に見るべきものがあった選手だが、アーセナルに行って「ボランチ」という邪魔な意識がいい感じで抜けてきたようで、実に気持ちのいいMFぶり。

システムも、右の波戸下がり目で左の小野上がり目だとか、いつにないバランスのよさ。イタリアがちっともプレスしてこなかったせいではあるが、トルシエも真面目に4バック的オプションを考えられると言うことかもしれん。ともかく、この前半のチームなら、来年にも結構期待が持てる、という出来。

_が、後半は目に見えて悪くなる。なんちうか、いつものトンチンカンなトルシエ采配炸裂である。前線引っかき回せる森島は下げるわ、FWに鈴木と西沢並べてみるわ、いったい勝つ気があるのだろうか。

_結果(引き分け)は上々か。強豪とはいえ元々相性の良さそうな相手、ホームゲーム、相手のコンディションはボロボロ、ってあれこれ考えると僅差の勝ちまで期待したかったけど、まぁそれは贅沢だろうて。

@一応冗談

違います。バグ見つけたら金を払うと宣言しているTeXというソフトが存在します。ソースレベルでバグ発見しないといけなかったりしますが、限定的ではあれ責任は取っているかと思います。

11.9

@部品自作

仕事。PerlDBIを使用中。$dbh->selectall_arrayrefとか、$dbh->selectall_hashrefとかを使いやすくするために、arreyrefとかheshrefを適当にblessして扱いやすくしてくれるモジュールとかあるだろー、と思ってCPANを見にいくもなさげ。

本当にないのか、はたまた探しかたが悪いのか。ともかく仕方ないので自分で作ってます。一般的なお作法(無名ハッシュを用意してbless)なぞやらずに、リファレンス渡しされた対象のarreyrefやらhashrefやらを直接blessするという剛毅な有り様。オブジェクトを作るってよりは、既存のarreyrefやらに関数オブジェクトを付加するってイメージ。


11.11

@

先週買ったスーパーロボット大戦α外伝をやりながら、自作なWeb更新時刻チェッカのメンテナンス。コードの整理をしてみたり、ad hocにやってごちゃごちゃになっていたデータ構造をすっきりさせたり。

っていうか、小さな手直しばかりしていたら、肝心の改造に着手してませんよ? 本末転倒?

仕方がないのでスパロボでもやってフテ寝します。


11.12

@Junk Talk

窓の杜のコラムとか、高橋さんの「プログラマの責任」とか読んでへれへれと思索。

11.13

@

……この調子でいろいろあると、10年もしたらNYは無くなっているのではないだろうか、と不謹慎なことを言ってみる。ただでさえ有力候補だったのに、アメリカにとって21世紀最悪の1年としての株は急上昇である。

ともかく、それだけの不幸があった。何かができるわけでないが、せめて祈りを捧げておこう。

@本末転倒

他のクラスファイル参考にして追加すれば、jarticleにchapterを増やせないこともないです。ちうか、そのための「クラス」ファイル。……もっとも、LaTeXのマクロってとても読めたものではないテクニックの嵐だったりしますが。

@先週末に引続き、Perlのモジュールを作り中。

で、試しにTest::Unit::TestCaseなぞ使ってXPなTestというものの雰囲気を味わいつつ。

今のところ、テストのデバッグの方が手間がかかるという有り様ではあるが、雰囲気はなんとなく味わえている。初期フェーズはテストと機能を両方デバッグしていくような感じで、威力を発揮するのは中期以降か。

最初にテストを書くことで仕様も明確になるし、必要なこともわかってくる。ペアプログラミング環境下なら単純エラーの数も減るだろうから、テストを書く手間が増えてもなお有利か。

ともかく試してみたいという気持ちはあれども、所詮身分は下っ端さんである。ま、できるとこだけでも試してはみるつもり。

@

UNIX環境で動く縦書きテキストリーダー。知ってるのはXJTEXTぐらい。試しに手元でコンパイルしようとしてみたら xwindow.h:63: ISO C++ forbids declaration of `mapRaised' with no type みたいな感じに怒られたので直してみました。そんなわけでパッチ。
diff -u XJTEXT-1.3/xwindow.h XJTEXT-1.3-ISOC++/xwindow.h
--- XJTEXT-1.3/xwindow.h        Sat Sep  4 22:45:16 1999
+++ XJTEXT-1.3-ISOC++/xwindow.h  Tue Nov 13 14:04:24 2001
@@ -60,7 +60,7 @@
     XSetLineAttributes(TheDisplay,TheGC,1,LineSolid,CapButt,JoinMiter);
     XDrawLine(TheDisplay,TheWindow,TheGC,X1,Y1,X2,Y2);
   }
-  inline                mapRaised(void) {  XMapRaised(TheDisplay,TheWindow);}
+  inline int            mapRaised(void) {  XMapRaised(TheDisplay,TheWindow);}
 };
 
 #endif

@執筆現状

そーいやONE卒業文集再版するらしいです。参加者として一応宣伝。

それとは別に、C.Fさんも書いてますが元長本「福音書(仮称)」なんてのを出したいなって話をしてたり。元長作品はKtFしかやってない私が言い出すことではないような気もしますが。冬コミ合わせで準備号を出しつつ来年2-3月の発刊を目論見CHU? 煽動賛同者募集中。

むしろ個人的には現状欠番になってしまっているProgressive9(Progressive8で書いた、でぶ猫と不思議少女の学園ファンタジーの続き)をどーにかしてやらんといかんですが。えー、あれから1年経ってますが、状況は芳しくありません。欝。

@

あー、確かにvoidかも。なんも考えず「省略されてるならとりあえずint〜」とかいーかげんに直したのがバレバレですな。ということで、気持ちが悪いと感じる人は先刻のパッチをそのように直して下さい。いじょ。

11.14

@メソッドチェーン in Perl

Perlなオブジェクト指向でふにふにとコーディング中に、メソッドの最後に自分自身(一般的には$self)をreturnしてやればメソッドチェーンができることに気付いてみる。要するに、「 $sample->fetch()->Jcode('euc')->dump(); 」みたいな書き方ができる。場合を選べば、かなりコードがすっきりする。いい感じなので採用。

@超Spam

なんのかんので日々送られてくるケータイにSpamですが、今日届いたのは斬新です。

「出会い系サイトの広告と思しき、どこにもURLの書いてないSpam」

多分文字数制限にひっかかったのだろうけど、いったいなんの意味があるのだろう(笑)


11.15

@無気力模様

空もそれなりに気持ちがいいってのに、ひたすらやる気の出ない一日。貢献らしい貢献っちゃあ、聞き耳立ててた近くの会話に、たまたま知ってた技術的アドバイスを入れただけ。おかげでそっちは一気に話が進んだようだけど、自分の仕事の方はさっぱり。

こういう日もあるさね〜な気分になるのを、いかんいかんと思い直し、でもやっぱりやる気はわかない。見事なまでの無気力模様。


御意見・御感想の宛先white@niu.ne.jp