Floating Log 2005/9

2005-09-30

刺激を受けた技術本5冊

流行っているらしい。 元ネタはTech総研? こっちのnaoyaのはてなダイアリー? 何はともあれ面白そうなネタなので自分でも考えてみる。

真っ先に思い浮かんだのが「プログラミング言語 AWK」。*1 大学の図書館で原書を見た方が先かもしれないが、とにかく衝撃の一冊。

そして「リファクタリング」。 この本以上にプログラムには改善の余地があるという感覚を抱かせる本はない。 プログラマー心を刺激しまくり。

以上2冊は圧倒的だが、ここからは少し落ち着いてくる。

3冊めはMeyer「オブジェクト指向入門」。 Eiffel というマイナー言語だが、しっかりした思想がある。

哲学者クロサキの MS-DOS は思考の道具だ」を4冊めに挙げよう(技術系じゃないけど)。 過去の思い出という感じはあるが、この本以来黒崎政男は心の師だ。 そういえば最近黒崎政男の本を読んでないなあ。

あと1冊は「詳説 正規表現」でいいかな。 読むと深い感動があるが、直接的に役に立ってはいない気がする。

*1: 最初に読んだ当時はトッパン。その後出版事業から撤退したトッパンに代わって CMC 、そして現在は新紀元社から出ているらしい。

posted at 22:37:04
 

スケジュール

電車で隣に座った人が小さめのノートぐらいのスケジュール帳を見ていた。 私はスケジュール帳のようなものを使わなくなってどれぐらいだろう。 電子的手段に移行したとかではなく、単純に頭に入るぐらいのスケジュールだからいらない、という話である。

頭に入っている様を自省すると、 これから一週間ぐらいは曜日ごとにわりとはっきり把握しているが、そこから先はかなり漠然とした日付でしか把握していない。 遠かったスケジュールがあと一週間ぐらいまで近付いてくると日付が曜日に換算され、今度は日付が意味を失う。 漠然とした日付にせよ把握しているのは大体三ヶ月ぐらいで、そこから先は闇の中。

何か、こんな時間感覚を元にスケジュール管理ソフトを書いたら直感的かな、とか考え始めた。 もちろんすぐ気がついたが、そんなものいらないという話だった。

posted at 00:10:56
 
2005-09-29

短い

もう後期も三週目。 3時限ある講義のうち1時限だけ10分以上短く終わってしまった。 もちろん同じ内容を話しているつもりなのだが。 何か話し忘れたか? と少し不安を覚えた。

posted at 23:49:36
 
2005-09-28

パンク

出がけに自転車の後輪がパンクした。 最近後輪歪んでるし、リムごと交換した方がいいのかなあ。

posted at 23:45:20
 

窓キー

fluxbox を emerge し直している間コンソールに下りていたのだが、Alt と間違えて隣の窓キーを押したら、別のコンソールに移動した。 全然知らなかったので、初めは何事かと驚いたが、左窓キーで一つ小さい番号に、右窓キーで一つ大きい番号のコンソールに移動することになっているようだ。 今まで Alt+F2 で tty2 といった直接的な指定で移動していたが、tty1 から tty2 に移るには右窓キーでいいわけだ。

posted at 02:40:16
 
2005-09-27

FEEDBRINGER

Python Desktop Server のアグリゲータで過ごしてきたが、もう少し何とかしたいと思い立った。

Firefox の extension (たとえば SAGE とか)をいくつか試したが、これらはあまり使い易くなかった。

FEEDBRINGER を使い始めてようやくアグリゲータの登録を削減する気になった。 ということで、しばらくは FEEDBRINGER で過ごすんじゃないかと思う。

posted at 23:56:00
 

xorg-x11-6.8.2-r5

xorg-x11 の更新に失敗した。

make[4]: Entering directory `/var/tmp/portage/xorg-x11-6.8.2-r5/work/xc/programs/glxinfo'
i586-pc-linux-gnu-gcc -march=k6-3 -O3 -pipe -fno-strict-aliasing -ansi -pedantic -Wno-return-type -w     -I../.. -I../../exports/include   -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L 				-D_POSIX_SOURCE -D_XOPEN_SOURCE 				-D_BSD_SOURCE -D_SVID_SOURCE 				 -D_GNU_SOURCE 				  -DFUNCPROTO=15 -DNARROWPROTO -DXTHREADS  -D_REENTRANT -DXUSE_MTSAFE_API    -DDO_GLU    -c -o glxinfo.o glxinfo.c
rm -f glxinfo
i586-pc-linux-gnu-gcc -o glxinfo -march=k6-3 -O3 -pipe -fno-strict-aliasing -ansi -pedantic -Wno-return-type -w     -L../../exports/lib   glxinfo.o -lGLU -lGL -lXext -lX11  -lpthread -lm   -Wl,-rpath-link,../../exports/lib
../../exports/lib/libGLU.so: undefined reference to `operator new(unsigned)@GLIBCPP_3.2'
../../exports/lib/libGLU.so: undefined reference to `vtable for __cxxabiv1::__class_type_info@GLIBCPP_3.2'
../../exports/lib/libGLU.so: undefined reference to `vtable for __cxxabiv1::__vmi_class_type_info@GLIBCPP_3.2'
../../exports/lib/libGLU.so: undefined reference to `__gxx_personality_v0@CXXABI_1.2'
../../exports/lib/libGLU.so: undefined reference to `operator delete[](void*)@GLIBCPP_3.2'
../../exports/lib/libGLU.so: undefined reference to `vtable for __cxxabiv1::__si_class_type_info@GLIBCPP_3.2'
../../exports/lib/libGLU.so: undefined reference to `__cxa_pure_virtual@CXXABI_1.2'
../../exports/lib/libGLU.so: undefined reference to `operator new[](unsigned)@GLIBCPP_3.2'
../../exports/lib/libGLU.so: undefined reference to `operator delete(void*)@GLIBCPP_3.2'
collect2: ld returned 1 exit status
make[4]: *** [glxinfo] Error 1
make[4]: Leaving directory `/var/tmp/portage/xorg-x11-6.8.2-r5/work/xc/programs/glxinfo'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/var/tmp/portage/xorg-x11-6.8.2-r5/work/xc/programs'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/var/tmp/portage/xorg-x11-6.8.2-r5/work/xc'
make[1]: *** [World] Error 2
make[1]: Leaving directory `/var/tmp/portage/xorg-x11-6.8.2-r5/work/xc'
make: *** [World] Error 2
!!! ERROR: x11-base/xorg-x11-6.8.2-r5 failed.
!!! Function build, Line 975, Exitcode 2
!!! make World failed
!!! If you need support, post the topmost build error, NOT this status message.

@GLIBCPP_3.2 って何だろう。

追記: libstdc++ だったようだ。 libstdc++.so.5 が libstdc++-libc6.2-2.so.3 へのシンボリックリンクだったのを、libstdc++-v3/libstdc++.so.5 に張り替えたらうまくコンパイルできた。

posted at 00:06:40
 
2005-09-25

小さな政府

ハリケーン被害関連で、小さな政府の限界みたいな話がある。 それで考えた生煮えの考え。

小さな政府っていうのは簡単に言えば予算規模が小さいわけだから、臨時即応というのは難しいのが道理。 社会全体としてそれでもどうにかしないといけないので、余剰資金のあるところがどうにかするべきだ。 つまり、金持ちが社会還元することが求められる。 noblesse oblige ってやつだ。 結局、政府の規模に関わらず、持ってる奴が出さないと世の中回らないということかな。

posted at 23:51:44
 
2005-09-24

台風はゆっくりと接近中

台風17号が接近中のため一日中雨。 で、外出する気になれなかったので、家にいて NZMATH のバグフィックスとか整合性の向上とかといった作業をのんびりと。

posted at 23:53:52
 
2005-09-23

国勢調査

調査員が調査票を持ってきた。 全戸訪問して手渡しが原則らしい。

じゃあ、たとえばホテル住いの人がいるとして、その人の部屋に今日ぐらいにノックがあるわけだ。
コンコン
「はい?」
「国勢調査の調査票を持って参りました」
…だめだ。想像できない。 っていうかホテルのその部屋に住んでるって調査員はどうやって知っているというのだろう。

妄想はさておき、国勢調査は本当に必要な調査なのだろうか。 まともに答えない層が多分存在するし、他の行政資料で調べたいことは大体判ると思う。

posted at 20:26:56
 

時の扉をあけて

ピート・ハウトマン「時の扉をあけて」創元SF文庫(2000)。 今月あまり本を読んでいない気がするので、文庫を一冊。 タイムトラベルものだが SF 的詮索はなく、少年が50年ほど過去に飛んで人生をスタートし直すことで不可解に思えたできごとの裏側を知っていく、といった話。 50年は長すぎるだろう、と思うが、そこは病院に収容されたままだったりして折り合いをつけている。

菅浩江の解説の深読みはどうなんだろう。

posted at 18:57:20
 
2005-09-22

月刊言語

「インド系文字の世界」という特集が面白そう、ということで仕事帰りに探した。 八王子で5軒の書店を回ったが、売り切れ、取扱い無し、取扱い無し、売り切れ、取扱い無し。 意外に入手困難だ。 …大学生協で見掛けた時に買っておけばこんな苦労は無かったものを。

結局、阿佐ヶ谷に帰り着いてから書原で買えたから良かった。 特集はこれから読むところ。

posted at 23:24:00
 
2005-09-21

卒業式

榛野なな恵「卒業式」クイーンズ コミックス(2002)。 表題作など4編収録の作品集。 Papa told me でも顔を出す反「長い物には巻かれろ」的な思考が凝縮されている。

posted at 09:27:44
 
2005-09-20

また雨

火曜日なので、学校で NZMATH を改造したり、色々。 帰る時間には弱い雨が降っていたが、近頃「学校に行った、帰る時間には雨だった」というパターンが多い気がする。

posted at 23:38:56
 

等価変換

Q. こんなコードがある。

while True:
   if p(x):
      g(x)
      break
   else:
      x = f(x)

もっと解り易く書け。

A.

while not p(x):
   x = f(x)
g(x)

解説: 元のコードの問題点は、脱出条件の明確なループを永久ループで書いてある、という解り難さにある。 g(x) の実行がループ脱出直前にあっても直後にあっても同じであることに気付けば、この変形は難なく行えるはずである。

(今日はこんな変換をしながら他人のコードを読んでいた。)

posted at 02:59:28
 
2005-09-19

岡山日帰り

岡山大学で行われた「数学ソフトウェアとフリードキュメント」に行って、NZMATH の紹介をしてきた。

8時過ぎに家を出て、日曜日で中央線が通過してしまうので総武線・中央線と乗り継いで東京駅へ。 9時台ののぞみで岡山着は12時半頃。 そこから、そんなに遠くないと思って歩いて岡山大学まで、実際には結構距離があって30分近くかかって会場到着。 大学のキャンパスも広い。

印象に残ったのは kseg の紹介。 あと、KNOPPIX/Math 以外の Linux 勢が概してシンプルな WM だった(fluxbox とか afterstep とか)のは、偶然だろうか。

6時ごろ閉会して、懲りずに徒歩で岡山駅に戻る。 7時台ののぞみで、電源の取れる席が空いてたので ThinkPad を広げつつ。 帰宅は0時を過ぎたが、岡山日帰りの一日。

posted at 00:47:12
 
2005-09-16

.mgprc

プレゼン用に ThinkPad に app-office/magicpoint を入れた。 昔の資料に手を加えて動かしてみると、「tfdir はこの設定ではサポートされないよ」と warning が出る。 ~/.mgprc に対するものだ。 .mgprc は、まだ Vine で動かしていた頃の残骸。 だが、現在の mgprc-sample も同様だった。

そうすると、TrueType サポートが無い? と思ったが、equery uses の結果 truetype フラグが立っていることを確認。 謎が深まる。

ぐぐって、Re: magicpoint, freetype/freetype2 というメッセージを発見。 xft2 でコンパイルした時は tfont その他の指定はいらない、らしい。 多分そういうこと。 .mgprc を消して、発表準備に戻らむ。

posted at 21:58:40
 
2005-09-14

半分ぐらい

髪を短くしようとは考えていたのだが、タイミング的に今日しかない上に自分で切る気力がないので、切ってもらいに行った。 人に髪を切られるのは多分13、4年ぶり。
「どうしましょう」
「半分ぐらいに」
肩の辺りで毛先が踊るぐらいの長さなので、半分でもわりと長め。 というつもりだったのだが、店の人は複雑な顔。 あまり受けない注文なのかも、床屋だし。

自分で切る時よりまとめて切る髪の量は少ないなあ、とか目の前の鏡を見ていたのはほんの数分。 あとは目を閉じて、聞くともなく店内に流れるラジオの声を聞く。 スピードワゴンの井戸田と安達祐実が結婚するという。

1時間弱でできあがり、想像通りの髪の長さに流石プロ、と思った。 自分で切る時は想定と誤差が出て当り前なので。 それでも、次からまた自分で切ると思う。 気楽だしね。

posted at 17:34:08
 
2005-09-13

体調悪し

そろそろ後期の開始が近付いている。 日曜日の岡山の準備もしないといけない。 仕事が溜りつつあるのだが、こんな時に限って体調があまり良くない。

いつにも増して少食なのに、胃もたれして気持ち悪い。 暑いけど、水分を摂るのも不快。

季節の変わり目だからか、寝ている間に気管支がざわざわしてきて、息苦しくて眠りが浅くなる。 午前中は咳が出る。 声が嗄れる。

昨日一日で治まらなかったので、若干不安を感じている。

posted at 23:38:56
 
2005-09-11

自民党圧勝

他に言うべきことはない。

posted at 20:41:52
 
2005-09-10

パスワード

コメントスパムなどをログインして消せるということなのだが、lowlife.jp のパスワードって何だ? 思い出せない。

posted at 23:47:28
 
2005-09-09

元日に閏秒

来年の元日に閏秒が挿入される。
NICT 報道発表 via ITmediaニュース

日本時間で午前9時の前に8時59分60秒が挟まれる。 ということは、イギリスではちょうど0時直前なので新年カウントダウンで、23時59分51秒に「10」と数え始めないとフライングしてしまう。 って何を心配しているんだか。

posted at 23:13:20
 
2005-09-08

uim-prime の候補ウィンドウ

PageDown を押したら現在表示している10候補の次の10候補に表示を移してくれたら、同音異義語がたくさんある語の選択が楽なのに。 と思って prime.scm を眺めたけど、それらしきものは無い。 prime-key-custom.scm に 'prime-next-page-key という名前は定義されているのだが、それを押した時に呼ばれる関数が存在しない、という状況らしい。 関数を作って呼ぶようにすればいいとは思うんだけど…。

posted at 22:58:24
 
2005-09-07

Idle で BicycleRepairMan

前回(BicycleRepairMan)の続き。 前回は Emacs から使えるようにするということだったのだが、今回は Idle。 普段使っているわけではないので、必要性の問題ではない。

emerge した時に出るメッセージは BicycleRepairMan won't integrate with IDLE included in Python 2.3* と実につれない。 2.3 とあるのは 2.2 との対比であって、時代に取り残された感じが強い。 これで文句が出ないということは、要するに、使われてないのだろうと思われる。 ますます、作業の必然性がないのだが…。

作業の参考にしたのは Ammonite BlogBicycle Repair Man, a Refactoring Browser for Python という記事。

スペースが変、の対策のパッチを作って、それを当てるように ebuild を改造(epatch のために eutils を inherit して、src_unpack を追加)。 ということで、emerge し直し。

config-extensions については、実験の結果以下のようになった。

  • 何も無いと何もない(当然)。
  • ~/.idlerc/config-extensions.cfg に書くと、Idle のメニューに BicycleRepairMan が現れるが、その中のメニューは空っぽ。 キーバインドの設定に、関係する brm-* が出現しない。
  • /usr/lib/python2.4/idlelib/config-extensions.def に追加すると、メニューに関しては上と同じ。 ただし、キーバインドを Options から変更することができる。

どうしてもメニューは空だが、とりあえず、 config-extensions.def に追記すれば、使えないこともない。 キーボードからしか使えないのだから、キーバインドは先に書いておく方が後からカスタマイズするより良いかもしれない。

posted at 09:21:20
 

マニフェスト

民主党のマニフェストを受け取って読んだのだが、賛同できる部分もできない部分も(当然)ある。 でも結局、同じように良い部分と悪い部分を含むであろう自民党と共産党と(まあ小選挙区ならそれだけしかいないわけだけど)から、無理矢理選択するしかない。

選ばないという選択肢はないわけだから、とても悪質な抱き合わせ商法だ。 特定の政党を支持する人にとっては違うのだろうか。

posted at 00:00:16
 
2005-09-05

善福寺川

近所の川だが、昨夜の雨で結構凄かったらしい。 ニュースでその名前を聞くとは思っていなかった。

posted at 16:19:28
 
2005-09-03

岡山

数学会の前日に岡山に行くことになりそう。

posted at 01:12:48
 
2005-09-02

考えないヒト

正高信男「考えないヒト」中公新書(2005)。 IT技術の進歩によってヒトは猿に戻る、とか要約すると凄いなあ。 各論ではそんなに変な事は言ってない、という印象は強調しておくが、ちょっと議論の足場が不安定という感じがある。

posted at 21:48:00
 

BicycleRepairMan

Python のリファクタリングブラウザー BicycleRepairMan を試してみることにする。 bicyclerepair-0.9 を emerge。

To use bicyclerepair with Xemacs or GNU Emacs you must be in Python mode and add this to your .emacs or .init.el:
(load-library '/usr/share/bicyclerepair/bike.el')

と表示されたのでもちろん python-mode から使う気満々の私としては .emacs に書いておくかと思ったが、引用符がおかしいじゃないか。 怪しみついでに bike.el の中を見てみようと思ったら、ファイルが無い。 どうも間違いが過ぎる。 大体、.emacs に書かせるってのもどうよ。 site-lisp ディレクトリーに設定ファイルを置いて site-gentoo.el を取り込むだけで済むようにはなっていて欲しいところだ。

まあ、こういう事態に立ち至れば bugzilla しかない。 検索の結果、Gentoo Bug 92219 - dev-python/bicyclerepair automagic emacs support (and ppc-macos keyword) が見付かった。 気になった部分を直して emacs フラグで 55bicyclerepair-gentoo.el を置いてくれるパッチがある。 ありがたや。

む、でも site-gentoo.el までは面倒見てない。 ということで、その処理を追加したパッチを置いておいた。 ふう。

肝心の BicycleRepairMan は、まだ emacs にメニューが現れることを確認しただけ。 使い心地を確かめるつもりだったのだが、思わぬ時間を使った。

posted at 01:19:12
9月 2005
     1 2 3
4 5 6 7 8 910
11121314151617
18192021222324
252627282930 
8月
2005
 10月
2005

浮遊する思考・浮遊する言葉を拾い集めて記録しておくページ。

Python
Desktop
Server

© 2005-2013, Matsui Fe2+ Tetsushi