200302月の雑感

更新日:2003-02-23
[トップページへ] [1月] [3月] [過去の雑感へ]

2月23日()

 最近思うこと

なんでみんな、あそこまで頑張れるんでしょうか? そんな遅くまで残っても、アウトプットは出ないような気がするんですよ。 少くとも私は、遅くまで残っても、次の日にすっきりした頭で仕事に望めません。 結局、トータルでは、頑張ってるわりには、結果が伴わないような気がします。

 Regexp

「れぐえっくすぴぃ」と読んでます。


2月21日(金)

 ガツンと

お医者さんから

「薬をガツンと塗って治しましょう」

と言われました。「ガツンと」って言われても... 見るからに体育会系っぽい若いお医者さんでした。 私は、笑いをこらえるのに必死でした。

 『青い虚空』(ジェフリー・ディーヴァー)

読了。 ハッカーとクラッカーの息詰まる対決。

二点三点四点五点するどんでん返しの連続は、いかにもジェフリー・ディーヴァーらしいです。 どんでん返しの連続のため、息つく暇もありません。さすがに、読んだあと、ちょっと疲れてしまいました。 でも、『眠れぬイヴのために』のどんでん返しには及びません。 どんでん返しの数がポイントではありません。 伏線をきちんと張った上で、どれだけ大きく、鮮やかに、すべてをひっくり返すかがポイントなのです。

ハッカーが使っている(UNIXの)コマンドによって、 出身地を予想するというのは、インターネットが発達した今の時代では、無理があるんじゃないかと思うのですが、 あくまでも、フィクションなんだから、ツッコんではいけないのかも知れません。


2月19日(水)

 岩井志麻子

今、偶然テレビをつけたら「ミステリー作家 岩井志麻子」とテロップが出ていた。 ミステリー作家だったんですか???

 『象と耳鳴り』(恩田陸)

読了。 「海にゐるのは人魚ではない」が好み。 「机上の論理」と同じ発想の番組が、NHKでやっていたように思います。


2月16日()

 本日買った本

 『象と耳鳴り』(恩田陸)

連作短篇集。途中までしか読んでませんが、面白いです。 本格推理と言いながら、結末をどこかしら曖昧にしたり、幻想的なシーンにするのは、この人らしいです。 多佳雄と春のコンビはクイーン親子を思わせます。


2月15日()

 ruby-list ruby-dev ruby-talk

onにした。

 『プリズム』(貫井徳郎)

Scene1 「虚飾の仮面」を読了。いわゆるジュブナイルってやつですか?

(ここから追記) Scene2 〜 Scene 4も読了。

この作品は謎解きミステリですが、謎解きのカタルシスや爽快感は味わえません。

Scene 4まで読み進むと、それまでの展開から、誰が犯人なのか、予想できます。 それでも別に構わないのです。 何故なら、こちらの興味は、「犯人は誰か?」という点にないからです。 「作者がどうやって探偵役に犯人まで到達させるか?」 という点が気になってくるのです。

多分、作者もScene 4で読者に犯人がばれているということは百も承知なのでは無いでしょうか? Scene 4に至っては、物語の探偵対犯人ではなく、作者対読者という構図になってしまうのです。

最後まで読んだ私は、作者との対決に負けてしまいました。 作者の目論みは、見事に決まっています。 あれが伏線として生きてくるとは思いもしませんでした。鮮やかです。

えーと。で、結局、犯人は誰なんでしょうか?(←この質問の意味は、この作品を読んだ人じゃないとわかりません。)

 本日買った本


2月13日(木)

 MLのOFFあるいは退会

都合により、各種MLのoffあるいは退会の手続きを取ることにしました。 すぐに復活するかも知れませんし、一部は復活しないかも知れません。


2月12日(水)

 typo

ありがとうございます。 修正しました。

 Test::Unit

どうやら、やっとRuby本体(Ruby 1.8)に取り込まれたみたいです。


2月11日(火)

 Portable.NET 0.5.2 (Linux)

インストールしました。

まずは、treeccから。

tar zxvf treecc-0.2.2.tar.gz
cd treecc-0.2.2
./configure
make
make check
make install

次は、pnet-0.5.2です。

tar zxvf pnet-0.5.2.tar.gz
cd pnet-0.5.2
./configure
make
make check
make install

最後にpnetlib-0.5.2。

tar zxvf pnetlib-0.5.2.tar.gz
cd pnetlib-0.5.2
./configure --with-pnet=../pnet-0.5.2
make
make check
make install

試してませんが、 pnetlib-0.5.2

JScript implementation -- parsing and evaluation for ECMAScript 3.

というのがちょっと気になってます。

 Eclipse(Linux)

Java WORLD 3月号の記事を参考にして、EclipseにJUnitを組み込んでみました。 さらに、「eclipseを使ってみよう」を参考に Tomcat Pluginでもちょっとだけ遊んでみました。 これを仕事で使う場合、どういう風に使えばいいのか、まだ見えてきません。 もう少し使い込んでみないと駄目ですね。

それにしても、やっぱりEditorにVim互換モードが欲しいです。


2月9日()

 クロスコンパイル環境(Linux)

せっかくWINEをインストールしたのだから、Linux上にCygwinのクロスコンパイル環境の構築に挑戦。 参考にしたのは、たむらさんの構築手順わたなべさんの構築手順です。

用意したものは次の通り。

binutils-20021117-1-src.tar.bz2
gcc-3.2-3-src.tar.bz2
cygwin-1.3.18-1.tar.bz2
gcc-mingw-3.2-20020817-1.tar.bz2
mingw-runtime-2.3-1.tar.bz2
w32api-2.1-1.tar.bz2

/usr/local/cygwinというディレクトリを作って、そこに新たにクロスコンパイル環境を構築することにしました。

mkdir /usr/local/cygwin
prefix=/usr/local/cygwin
mkdir -p $prefix/i686-pc-cygwin
tar xfv cygwin-1.3.18-1.tar.bz2 --us=bzip2 usr/{include,lib}
tar xfv mingw-runtime-2.3-1tar.bz2 --us=bzip2 usr/{include,lib}
tar xfv w32api-2.1-1.tar.bz2 --us=bzip2 usr/{include,lib}
mv usr/{include,lib} $prefix/i686-pc-cygwin

binutilsのコンパイル。

tar jxvf binutils-20021117-1-src.tar.bz2
cd binutils-20021117-1
CFLAGS=-Os ./configure --prefix=$prefix --target=i686-pc-cygwin
make
make install

続いて、gccのコンパイル。事前に $prefix/bin にパスを通しておきます。

export PATH=$prefix/bin:$PATH
tar jxfv gcc-3.2-3-src.tar.bz2
cd gcc-3.2-3
mkdir cygwin; cd cygwin
CFLAGS=-Os CXXFLAGS=-Os ../configure --enable-languages=c,c++ \
--enable-threads=posix --with-system-zlib --enable-nls \
--without-included-gettext --disable-shared --enable-interpreter \
--disable-sjlj-exceptions --disable-version-specific-runtime-libs \
--target=i686-pc-cygwin --enable-haifa --prefix=$prefix
make
make install

次に -mno-cygwin でも使えるようにします。

mkdir -p $prefix/i686-pc-mingw32
cd $prefix/i686-pc-mingw32
ln -s ../i686-pc-cygwin/bin .
ln -s ../i686-pc-cygwin/include/mingw include
ln -s ../i686-pc-cygwin/lib/mingw lib        
cd ~-/../..
tar jxvf gcc-mingw-3.2-20020817-1.tar.bz2
cd etc/postinstall
tar xvf gcc-mingw-3.2-20020817-1.tar -C $prefix
cd $prefix/lib/gcc-lib/i686-pc-mingw32/3.2
ln -s ../../i686-pc-cygwin/3.2/cc1 .
ln -s ../../i686-pc-cygwin/3.2/cc1plus .
ln -s ../../i686-pc-cygwin/3.2/cpp0 .   
ln -s ../../i686-pc-cygwin/3.2/tradcpp0 . 
ln -s ../../i686-pc-cygwin/3.2/collect2 .
rm *.exe

あっ。cygwin-1.3.19がリリースされていたのか。 と思ったら、cygwin-1.3.20がリリースされたとメールが...。

 クロス環境でRubyのコンパイル

それでは、Rubyのコンパイルです(Rubyは1.8を使用)。

mkdir ruby-mingw32
cd ruby-mingw32
../ruby/configure CC='/usr/local/cygwin/bin/i686-pc-cygwin-gcc -mno-cygwin' \
--host=i686-pc-cygwin ac_cv_func_setpgrp_void=yes --enable-shared i686-mingw32
make

ですんなりできました。

拡張ライブラリはどうやって作るのか不思議だったのですが、できたMakefileを見て納得しました。

MINIRUBY = ruby -I/home/suke/work/ruby-cygwin -rfake

つまり、クロスコンパイル環境でRubyをコンパイルするためには、 事前にnativeな環境のrubyをインストールしておく必要があるということです。 まあ、当り前と言えば当り前ですね。

Cygwinの方も試してみましょう。

mkdir ruby-cygwin
cd ruby-cygwin
../ruby/configure CC='/usr/local/cygwin/bin/i686-pc-cygwin-gcc'\
--host=i686-pc-cygwin ac_cv_func_setpgrp_void=yes --enable-shared \
--target=i686-pc-cygwin --build=i686-pc-linux
make

2月8日()

 GCC 3.2.2 (Linux)

バージョンアップしました。 binutilsもついでに。

tar jxvf binutils-2.13.2.tar.bz2
cd binutils-2.13.2
./configure
make 
make install

で、gcc。

tar jxvf gcc-core-3.2.2.tar.gz
tar jxvf gcc-g++-3.2.2.tar.gz
mkdir gccobj
cd gccobj
../gcc-3.2.2/configure --enable-languages=c,c++ \
--with-system-zlib --enable-sjlj-exceptions --enable-threads \
--disable-version-specific-runtime-libs --disable-nls \
--without-included-gettext --without-catgets
make bootstrap
make install

 Wine 20030115

インストールしてみました。

tar zxvf Wine-20030115.tar.gz
cd wine-20030115
./tools/wineinstall

途中で、make install までやるか?と聞かれたので、"no"として実行。

最後のregeditの実行でエラーになってしまいました。 とりあえず気にしないことにして、

make install

してから

wine ./xyzzy

として xyzzyを動かしてみたら動いちゃいました。 インストールは、ちゃんとできたということにしておきます。


2月7日(金)

 吐き気

吐き気がして気持悪い1日でした。

 猫でもわかるWindowsプログラミング

いつの間にか本になっていたんですね。 RubyWinを作り始めた頃にお世話になりました。

 ラーメン屋

盛り上がっていたのに期待はずれに終わってしまったという ショックからようやく立ち直ったので、ここで事後報告しておきます。

1人で盛り上がっていたラーメン屋ですが、 ちょっと前に行きました。

結局、麺もスープも、私とは、合わなかったです。 私の好みじゃありませんでした。


2月6日(木)

 Vim

カラー表示をやめました。 こっちの方が性に合っているようです。

 SVGその後

思った通り、今回の目的の達成するのには、 難しくはありませんが、面倒くさい(かった)です。 ほぼ目途がついたかなという感じです。


2月5日(水)

 Java vs Ruby

あるプログラムのJavaでの実装でちょっと悩んでいました。 煮つまってしまったので、 試しに気分転換にRubyで考えてみようとRubyでコードを書き始めたら 5分でできてしまいました。 RubyのコードをJavaに移植したのでした。

まだまだ、私は、Javaで、さくさくプログラミングができないようです。


2月4日(火)

 Win32OLEのバージョン

その理由は、単純です。 私がバージョンの更新を忘れていました。 今、RAAを修正しました。

 Eclipse

連載 Eclipseを使おう!」 を参考にして、ほんのちょっとだけ、eclipseを使ってみました。 確かに動きは軽快かも知れません。 残念ながら、今の仕事に間に合うように、使い方をマスターするには時間が足りません。

あと、Vimのキーバインドをサポートしてくれると嬉しいのですが。 emacs風のキーバインドはあるみたいですね。

 Peggy

同じ職場の人が使っていたので調べてみたら、シェアウェアでした。

 Vim

で、結局、Vimに戻ってしまいました。 「名無しのVIM使い[VIM6 for JAVA & XSL-FO]」を参考にしてます。

正直言って、カラー表示は、あまり好きじゃありません。

ここ2日ぐらい

syntax on

にして使っていますが、すぐに目が疲れるような気がします。

syntax off

に戻すかも知れません。


2月3日(月)

 節分

豆まきはしなかったけど、巻き寿司を食べました。

 SVG

ちょっとSVGについて調査。

今回の目的を達成するのは、 面倒かも知れませんが、難しくは無さそうな感じです。

ついでに、ruby-svgを試しました。 Ruby 1.8.0でエラーになってしまったので、適当に修正。 patchは作者さんに送付。 私は、ruby-svgが、 拡張ライブラリだと思ってました。 全部、Rubyで書いてあります。

あとは、Batikをインストールして、 ruby-svg のsampleの結果を表示してみました。


2月2日()

 チキンラーメンセット

昼ごはん食べようと思って初めて入った店で、お客さんが「チキンラーメンセット」と注文していました。 何?この店ではチキンラーメンを出すのか? と思ったら、チキンカツとラーメンのセットでした。

 最後の弁護人

テレビ放映中の「最後の弁護人」の阿部寛を見て、どんとこい!の上田教授を連想するのは私だけでしょうか? (マヌケさ加減という点では、上田教授の方がはるかに上です。)

 RAA

自分の作ったもののShort descriptionを更新したら、Recent Updateのトップに来てしまいました。

This change is minor edit.

にチェックを入れておけば、こうゆうことにはならないんでしたっけ?

Win32OLEは、1.7系の途中からRubyと一緒に配布されるようになった(してもらった)ので 1.8が安定版になったら、RAAのエントリからは消そうかなと考えてます。

 w3m-m17n

最近、UTF-8などのページも増えてきた(私がアクセスするページで増えてきた)ので、 w3m-m17nをインストールしました。


2月1日()

 Java Press 27

やっと読み終えました。 Eclipseの記事が興味深かったです。 ということで、Eclipseをインストールしてみました。


[トップページへ] [1月] [3月] [過去の雑感へ]