丁稚な日々

Rubyで遊んだ日々の記録。あくまで著者視点の私的な記録なので、正確さを求めないように。
Rubyと関係ない話題にはその旨注記しているはず。なので、一見関係無いように見える話題もどこかで関係あるのかもしれません。または、注記の書き忘れかもしれません...

[直前] [最新] [直後] [Top]

May.11,2002 (Sat)

Revision: 1.1 (May.11,2002 18:51)

伝播の研究

_ 昨日のうちにAntenna-Juliaに被捕捉。
自分用のアンテナをいじってたおかげでgenzo-のチェックにかかったらしい(Rabbitには最初から捕捉してあった)。
これはIRCで本人に経緯を確認。genzo-がいちばんはじめに気付くと思ってたんだけど、そんなに頻繁にサーバの中身をチェックしてるわけでもないらしい。そりゃそうか。

_ 日付が変わってから、RWikiでの依頼に従い、Linkavailable: Ruby diaryに捕捉された。何度も作業させちゃってすみません>NaHiさん

_ というわけで、アクセスログと時系列を考えると、おおよそは推測できますね。
あってるかどうかは本人に確認しないとわかんないけど。
ま、今後はアクセスが増えちゃうだろうから、個人を特定して追っかけるのは難しいかな。

rb_w32_*

_ mingw版もだけど、[ruby-list:35044]にてwin32/win32.c(など)の関数の名称変更。
Nt*()がstaticになってないな。これは後でいいか、影響範囲のチェックも必要だし。
NtInitialize()も、rb_w32_initialize()とかに名前を変えて、組み込み用に#defineで元の名前を残しておく、とした方が統一が取れていいんかな。

May.14,2002 (Tue)

Revision: 1.5 (May.14,2002 18:19)

RUBY_PLATFORM

_ ちょっと齟齬があったようで。
それはそれとして、やっぱりrbconfig.rbとmkmf.rbが大問題。

_ ところで、ruby-win32メーリングリストはどっかでアーカイブを公開したりしてないんでしょうかね。

_ ZnZさんの疑問
私の案は、RUBY_PLATFORMを「i386-msvcrt」にしてmswin32版とmingw32版を統合すると言うこと(技術的問題については深く考察していません)。
ebanさんの案は、archdirの並びにi386-msvcrtというディレクトリをmswin32版・mingw32版それぞれに追加する、というものです。
前者だと、ZnZさんが懸念しておられる互換性の問題とかがあります(1.8では難しい、というのは互換性の点を考慮してます)。
後者だと、あとrubyのDLLの名前さえあわせれば、拡張ライブラリについてはmswin32版とmingw32版でバイナリ互換が取れる、というメリットのみを抽出したものと私は理解しています。

_ もっとも、私自身が自分の案に対してかなり懐疑的なので、将来的に統合するという案が強いわけではありません。
ebanさんの案の方が費用対効果の面でかなり優れてるので、こっちの方が採用の可能性は強いと思います。
# あと、ずっとこのままという可能性もなきにしもあらず

ruby-list

_ また旧にっきが言及されている。いや、ぜんぜんかまわんのですけどね。

_ [ruby-list:17079]ですが、全部削除(*1)しちゃいました。ごめんなさい。
2001年2月11日になんて書いてあったかというと、ruby-talkを最近は眺めるようにした、という話題の中で、

一つ目は[ruby-talk:10617]
これってようするにあの問題も同じことなのかなぁ。threadとsocketを組み合わせるとよろしくないってやつ。
まつもとさんはrubyからstdioを取り除くというようなことをおっしゃってましたが、それで解決?

というものです。
ここで言及している「あの問題」とは、「Rubyプログラミング入門」P.296のchat.rbがmswin32版ではthreadがブロックされて正しく動作しない、という問題。

JARH

_ そうか、Perlでも動くものだったのですか。
if $KCODEはPerlとRubyの識別のためだったんですね。納得。

伝播の研究

_ む、なるほど。
検索エンジンなどから前の日記に突撃して404を食らったりして、諦めきれずに一つ上のディレクトリを覗いてみた方々は発見できていたようです。
前の日記のindex.htmlを見た人は、たいてい素直に諦めていたようで。

_ 「Ruby/GTKプログラミング入門」が到着。
どーでもいーけど、この日記中の書籍へのリンクは紀伊國屋に向いてるのですが、わたしゃオンラインで書籍を買うときはほとんどAmazon.co.jpから買ってたりするのであった。そのうちリンク先をAmazonに変えよう。

_ それはそれとして、例によって例のごとくAppendix C(Ruby/GTKをWindows上で使う)から読んでみたのだけど、Cygwin版だった。
近いうちに、mswin32版だとどうなのか試してみよう。仕事関連で必要になるかもしれないし。

_ Rubyとは関係ないけど、「詳解UNIXプログラミング」「オイラーの贈物」を一緒に買った。
「詳解UNIXプログラミング」は高いなぁ。会社に払わせよう。

missing.h

_ config.hを自動生成しないmswin32版では、#define HAVE_*が増えたらへこへことwin32/config.h.inに手で追加しないといけない。
今回、missing.hが追加されて、この手のマクロへの参照が劇的に増えたので、へこへことそういう作業をしてたのだけど、commit前に確認... と思ってruby-devを眺めてみたら[ruby-dev:17058]でなかださんがとっくの昔にパッチを投げてらした。
くすん。

伝播の研究(2)

_ (c)SHO'sアンテナ 2ndしてたまnAntennaからの捕捉を確認。

_ Linkavailable: Ruby diaryもそうだけど、全部authorが同じですね。この日記中では一言もそのようには名乗ってないのに(別にauthorを変えろという意味ではないです、為念)
そういやトップページがそうなってたっけ。そのせいかな。

付記

(*1) 全部削除
過去分については、Ruby関連だけ抽出しようかとは思ってるのだけど、めんどくさい...

May.15,2002 (Wed)

Revision: 1.1 (May.15,2002 13:44)

mswin32

_ 今日はコンパイルが通る。ありがとうございます>なかださん。

_ rubiconも(いつも程度には)走るので、まぁ問題なさそう... ... って、エラーが9個に増えてるな。前はもっと少なかったような。
あ、そうか、いつもrubicon走らせてる環境だとlinkが有効になってるんだった。
これで消えるエラーが4個くらいあるから、それでつじつまが合うな。
ちなみに、失敗(Failure)も9個。これらのうちいくつかはそのうち「mswin32版の仕様なのだ」ということで対応コードを入れる(or入れてもらう)ということにしないといかんなぁ。

May.16,2002 (Thu)

Revision: 1.2 (May.16,2002 18:28)

CGI

_ お遊びで適当なCGIをRubyで書いてみる。
cgi.rbは今回は使わず。出力がxhtmlなので。
そういや、ruby-listにそんな話題が出ていたような。

Ruby/GTK

_ 正直、mswin32版だと地獄を見るような気がありおりはべり... と思いつつも、ちょっと試してみることにした。
Ruby/GTKのバージョンはRAAから落としてきた0.27。

_ 何はともあれ、GLibとGTK+がなければ何も始まらない。
えーと、GTK+ and GIMP for Windowsによると... 今日時点での最新はそれぞれ2.0.1と2.0.0。ただしGTK+の2.0.0はRemember that GTK+ 2.0.0 is not as stable on Windows as it is on Unix.という脅し(?)が書いてあるので、大人しく1.3.0を選択することにする。
必要なのは、それぞれのruntime packageとdeveloper packageだと思うんだけど、GLibの方にはRequires libiconv and libintl.と書いてあるので、それぞれのruntimeもダウンロードすることにする。計6個のzipファイルというこで、合計2.6MBくらい。
む、gtk+-dev-1.3.0-20020310.zipなんてファイルは存在しませんよ。gtk+-dev-1.3.0-20020313.zipならある。ファイル名間違い?

_ さーて、落としてきたはいいけど、こいつらどこに展開してやりゃいいのかねぇ。
まっとうなWindowsユーザのマシンには/usrも/usr/localもないんだけどなぁ。
でもまっとうなWindowsユーザじゃない僕のマシンにはC:/usr/localなんてディレクトリがあったりするので、とりあえずそこに放り込んでみることにする。
ここまではいいとして... C:/usr/local/libにDLLが入っちゃうのか。まぁいいや、ここにもPATHを通しておこう。

_ これで下準備は終わったので、次はRuby/GTKのextconf.rbの修正。
適当にmswin32版固有の設定(ってほとんど決め打ちですか)を自分の環境に書き換えて、extconf.rbを実行... ふむ、Makefileはできた。
んじゃ、nmakeっと。
むぎゅ、いきなりだめじゃん。glibconfig.hがないって言われても... ないものはないんだし...

_ というわけで、あっさりと挫折。ダメじゃん。
次回に続く... のかなぁ。

May.18,2002 (Sat)

Revision: 1.1 (May.18,2002 21:46)

mswin32

_ TMail-0.10.4-all。
ついでに1.7.2と1.6.7の最新版も... と思ったら、VC++5で1.7.2のコンパイルが通らなかったのでcommitしておいた。

May.19,2002 (Sun)

Revision: 1.2 (May.19,2002 16:24)

RUBY_INTERPRETER(?)

_ CのAPIは馴染み深いけど、馴染み深いものがいいとは限らないと思うのであった。

_ RubyだとARGV$0すら含まれてないんだから、インタプリタ名も明確に分離すべきじゃないかな。
そいや、$0には別名がないな。English.rbだと... $PROGRAM_NAMEか。お、またひとつRUBY_PROGRAM_NAMEへの反論材料発見。

_ それはそれとして、[ruby-dev:17143]でknuさんがおっしゃってるように、Processの中に入れる方が素直な感じ。

mswin32

_ こういうところからリンクをはられているのを発見した。
いや、紹介されてるのはmingw版なんだけど。
なんとなーく意味がわかるような気がするのが漢字のいいところ。

May.20,2002 (Mon)

Revision: 1.1 (May.20,2002 09:44)

被捕捉アンテナ類
[\ay antenna (testing)] [Ant] [Antenna-Julia] [LayserあんてなV2] [nAntenna] [nuance de Antenna] [Rabbit's Antenna] [Read List] [Ruby hotlinks 五月雨版 (るるりん。)] [してたま (私的アンテナ with たまてばこ)] [ただのあんてな] [ちゃらんぽらん] [でこぽんリンク] [なよろアンテナ] [にっきトレーサー] [偽善者あんてな - 2nd season -] [湘南日記放送局(SDB)] [はてなの各アンテナ]