history

青木日記 RSS

<前月 | 最新 | 次月>

2004-08-02

ruby 1.8.2 preview 2

とつぜん余裕ができると何をしていいかわからなくなる。 とりあえず ruby 1.8.2 のテストでもやってみよう。

うむ。868 tests, 9000 assertions, 3 failures, 36 errors と来たか。 起きてるのは全部 dRuby だな。 エラーには二種類あって、一つめは ECONNRESET になるやつ。

  1) Failure:
test_03(TestDRbSSLCore) [/usr/users/aamine/src/ruby-1.8.2/test/drb/drbtest.rb:126]:
<ArgumentError> exception expected but was
Class: <Errno::ECONNRESET>
Message: <"Connection reset by peer">
---Backtrace---
/usr/local/pkg/ruby-1.8.2-p2/lib/ruby/1.8/drb/drb.rb:878:in `close'
/usr/local/pkg/ruby-1.8.2-p2/lib/ruby/1.8/drb/drb.rb:878:in `close'
/usr/local/pkg/ruby-1.8.2-p2/lib/ruby/1.8/drb/ssl.rb:170:in `close'
/usr/local/pkg/ruby-1.8.2-p2/lib/ruby/1.8/drb/drb.rb:1108:in `close'
/usr/local/pkg/ruby-1.8.2-p2/lib/ruby/1.8/drb/drb.rb:1090:in `open'
/usr/local/pkg/ruby-1.8.2-p2/lib/ruby/1.8/drb/drb.rb:1014:in `method_missing'
/usr/users/aamine/src/ruby-1.8.2/test/drb/drbtest.rb:127:in `test_03'
/usr/users/aamine/src/ruby-1.8.2/test/drb/drbtest.rb:126:in `assert_raise'
/usr/users/aamine/src/ruby-1.8.2/test/drb/drbtest.rb:126:in `test_03'
---------------

もう一種類は nil になってる。

  5) Error:
test_08_here(TestDRbSSLCore):
NoMethodError: undefined method `stop_service' for nil:NilClass
    /usr/users/aamine/src/ruby-1.8.2/test/drb/drbtest.rb:66:in `teardown'

エラーが起きてるクラスは SSLCore、Safe1、UNIXAry、UNIXCore、DRbYield と幅が広く何が何やらわからない。 そのうえ、バラバラにテストを実行すると数が減る。なんだそれは。

うーむ。どうも SSL 関係が怪しい。OpenSSL が古かったりするのかなあ。 その影響で dRuby + SSL が失敗し、 ついでに UNIXSocket 関係が落ちてると考えると全体に筋が通る。 このへんをさらに調べてみることにしよう。

(19:54)

日記システムメモ

makerss プラグインを入れようとして tDiary 関連コンポーネントの連鎖アップデートにはまる。

(20:53)

(追記) 完了。output_rdf から makerss にした。

600au 不調

digital PersonalWorkstation 600au が不調。 久しぶりに起動したらなぜか ARC になってる。 この時点で何かおかしい。

時刻がリセットされてる。 この時点で明らかにおかしい。

OS が認識されてない。これはまあ理解できる。 ext2fs しかないから ARC には見えないだろうな。

ARC がモデルナンバーを 600a と認識している。 これも……まあ、ARC だからだろう。

ファームウェアを SRM に切り替えられなくない。これはすごく困る。 たぶん、600a と認識されてしまった余波だな。

ていうか、ブートできねえじゃねえか。

ちょうどいいので、ファームウェアの更新を試みる。 Tru64UNIX 5.1B についてきたファームウェアの更新ディスクのでよさそうだ。

ファームウェア更新中、今度はモデルが 433au と認識されたものの 書き換えは成功した。状況には変化なし。やっぱだめか。

うーむ……、状況から類推するに CMOS バッテリが死んでるのかなあ。 だけどそれだけでこんな妙な事態になるだろうか。 なるかもしれないなあ。とりあえず電池を換えてみよう。

(21:52)

600au 不調 (2)

SRM に切り替えられなくなったというのは嘘だった。 "CMOS Setup" → (F6) で Advanced CMOS Setting というのが出てくるので、 そこで "Console Selection: UNIX Console (SRM)" を選べばいい。 ずいぶん奥まったところに置くよなあ……。

で、それとは別にやっぱり電池が切れてるっぽいので、 電池を交換した。バッテリーは BR2032 (3V リチウム電池)。

それにつけても、ケーブルを一切抜き差しせずに ロジックボードを引き抜ける dpw の匡体は凄い。

(04:08)

電池型番の謎 / CR と BR

そんなわけで dpw600au のために BR2032 を探しに行ったのだが、 深夜のコンビニにあったのは CR2032 だけだった。 リチウムで 3V でボタン型という点では全く同じに見えるので、 とりあえず CR2032 を買ってみた。

BR と CR の違いは何なんだろう。 意外に BR 電池の情報は少なかったが、電池屋さんで情報を発見した。 やはり餅は餅屋か。

http://www.asahi-battery.co.jp/

ここの情報によると、CR 系と BR 系の違いは自己放電の量のようだ。 BR 系のほうが 「自己放電が小さく長期の保存にも安定した特性を示すため、 低負荷でのバックアップ用途に特に適してい」るという。 なるほどね。納得がいった。

つまり、性質として向いてるか向いてないかがあるだけで、 BR の代わりに CR を使っても特にヤバいことは起こらないようだな。 とりあえず CR2032 を入れておこう。

(04:09)


2004-08-05

fileutils バグ取り (1)

うー、だめだ、なかなかテンポが戻らない。

えーと、とりあえず CVS アカウントをもらわないとコミットできないな。 GPG の操作は初めてだからどうもよくわからん。

まずは中田さんがパッチを書いてくれた [ruby-talk:101077] から見よう。 ディレクトリをそのまま (a/* を b/* に) コピーしたいのか。 cp -r a b で b/a ができるのは cp(1) に合わせた仕様なのでしょーがない。

ああそうか、中田さんのパッチはこれを a/* → b/* にするパッチなのか……。 これは仕様が変わっちゃうからちょっと無理だなあ。

それより glob を使ってるほうがエラーになってるのが気になる。 これはいったいどういう状況で起きてるんだ。

うーむ、手元だと何も起きない。困ったな。 何なんだろう。シンボリックリンクかなあ。

うわあ、シンボリックリンクがコピーされてないよ! というか dereference されてるよ! これはまずいな。新たなバグと認定。 とりあえずテストだけ書いておこう。

そんでエラーは何なんだろうなあ。 ……あ、そうか、やっぱりシンボリックリンクか。 存在しないファイルを指すシンボリックリンクがあるとエラーになるんだ。 それじゃあさっきのバグを直せば自動的に直るってことだな。

(18:27)

fileutils バグ取り (2)

でも dereference できないとそれはそれで不便かなあ。 うーん…… cp(1) にもそういうオプションはないのか。じゃあいいや。

シンボリックリンク以外はどうだろう。 GNU の cp -R だとデバイスファイルとか FIFO はファイル自体をコピーするんだよな。 デバイスファイルの中身をコピーしたいってことはそうそうなさそうだし、 cp_r を cp -R 相当にしたほうが安全か。 よし、そうしよう。

(18:49)

fileutils バグ取り (3) ハマり道

あれえ、mknod ってないんだっけ?

ありゃ、mkfifo もない?

そうか、それで実装してなかったのか。 あ、[ruby-talk:91735] で中田さんがすでにパッチを出している。さすがだ。

うむむ、どうしようかな。 とりあえず外形だけ用意しておいて、 スキップするか……いや例外のほうがマシだ。

(20:11)

fileutils バグ取り (4)

想像以上に大きい変更になった。 きっと根源的にコピーという操作がややこしすぎるのだ。

なんで FileUtils.install に preserve なんてオプションがあるんだよ。 インストールするときにパーミッションを保持してどうする。 そのくせ owner と group がないというのがまた謎だ。 追加しておこう。

よし次。[ruby-talk:106434] は……NTFS かよ。やだなあ。 だいたいなんだ、なんで rm とマウントが関係あるんだ。 わけわかんねええよ。

(01:24)

本日のツッコミ (全2件) [ツッコミを入れる]

なかだ [installのpreserveが保持するのはタイムスタンプでは。]

青木 [あ、そうでした。

しかし、それはそれで非統一な感じ……(まあいいか)]


2004-08-06

バカ

ぅぉぉ…… committer の m が一個抜けてた……。 いつまでたっても confirm メールが来ないと思ったらこれが原因かょ。

(06:57)


2004-08-09

LL weekend……?

まさか 2 日目をまるごと寝過ごすとは思わなかった。 起きたら 19:00ってなんだよ。 今回の LL は 1 日目の CommonLisp も Groovy も見られなかったんだよなあ。 アタフタしてるうちに懇親会の申し込みも終わってたし。鬱。

(05:19)

ripper

そういえば、金曜にまつもとさんと相談した結果、 ripper を CVS HEAD に入れることになりました。 最新リビジョンに追従できしだいコミットします。

(06:39)

fileutils バグ取り part 2

[ruby-talk:106434]

マウントしたボリュームの中で rm_rf すると 勝手にアンマウントされるという報告。

予想通り、再現しねえし。

いちおう例外を探してみると、マウントポイント (正確にはリパースポイント re-parse point って言うんだっけ?) それ自体を消すとアンマウントされたことになっている。 マウントしてるのに消せるってのはちょっと驚いたけどな。

(07:54)

LL(w

日記に続々と書き込まれる報告を見ていたらさらに鬱に。鬱。

むかつくのでコードを書く。 ripper コミットしちゃおっかな (いやがらせ)

(10:13)

LLW: Haskellの場合

LLW の乏しい経験を元に書いておこう。

今回、「Haskellはわかんねーよ!」という感想が けっこう頻繁に見られるのは Haskell にとっては非常に有意義ではないでしょうか。 なにしろ、これまでは視野に入ってすらいなかっただろうし。

(10:58)

本当にRipperを今日中に入れる気らしい

とりあえず parse.y を以前と全く変わりなく動かすのが最優先。

~/c/ruby % ./ruby test/runner.rb
Loaded suite test
Started
...............................................................
...............................................................
.....................................................
/usr/lib/ruby/1.9/erb.rb:177: [BUG] unknown type 0x22 (0x12 given)
ruby 1.9.0 (2004-08-09) [i686-linux]
 
zsh: 22414 abort (core dumped)  ./ruby test/runner.rb

キタ―――!

来るな。

(13:12)

来てなかった

strscan.so なんていうシンボリックリンクを test/ の中に残しておいた過去の自分に猫キック

(13:24)

一難去ってまた一難

~/c/ruby % ./ruby test/runner.rb
Loaded suite test
Started
...............................................................
...............................................................
............................................................E..
...............................................................
...........................
/test/openssl/test_x509name.rb:106: [BUG] Segmentation fault
ruby 1.9.0 (2004-08-09) [i686-linux]
 
zsh: 22466 abort (core dumped)  ./ruby test/runner.rb

キタ―――――――――ッ!

とでも言うと思ったか! そんなマンネリな叫びを発するかよ! とかいう問題じゃなくて、この SEGV は ripper がマージされてない ruby でも同じように起こるからいいんだよ問題ないんだよ!

でも、E が気になるなあ。

fileutils だった……ちくせう

(13:29)

生き物の付く攻撃で統一しているようです

今朝 06:00 のレポジトリでテストしてたのを忘れた自分をタコ殴り

(13:35)

予兆

いかん、眠くなってきた

(14:05)

本日のツッコミ (全1件) [ツッコミを入れる]

ささだ [また豪快な。]


2004-08-10

sched()

よく考えると Ripper なんていじってる余裕はなかった。 夏休みになったんだからアレをやらねば……。

fileutils の件はだいたいかたづいたと考えていいな。 1.8 へのバックポートだけやれば終わりでいいだろう。

RDtool の話は急ぐつもりはないのでマターリやろう。

夏休み中には TD4 を完成させたいなあーと思ってます。 実は、裏でこっそり進行しているのだ。

夏休み中には "Conceptual Mathematics" を読み終わりたいなあーと思ってます。 実は、裏でこっそり読んでいる……ということはなくて 30 ページくらいで止まっています。

(06:26)

美しい直線、美しいtdiarytimes

丸型 tdiarytimes のギザギザについて、 半径 4 倍にして作ってから縮小すればもっときれいになるのではないか、 というアイデアを教えてもらったのだった。

(19:18)

new tdiarytimes てす

面白半分でやった。今は反省している。

(20:11)

本日のツッコミ (全2件) [ツッコミを入れる]

anonymous [でかっ!

ところで、縮小して綺麗になる場合って中間色を使って補間するから綺麗に見えるんだと思うのだが
ほぼ最後のドット絵世代としてはギザギザしてる方が何か綺麗な気がする。
脳内補間とも言う。]

青木 [そういえば「フォントにアンチエイリアスがかかってると
ぼんやりするから嫌」っていう人もいますね。]


2004-08-14

sync; sync; sync

何をどこまでやったのかわからんようになってきた

(12:34)

秋葉原に行った

必要にかられて Pentium II 333MHz を買いに秋葉原に行ったんだけど、 なかなか見付からなくて困った。 一昔前はザルいくらで売るほどあったのになあ。

ついでにシリアルのクロスケーブルも探してたんだが、 これも全然見付からないね。 探してたのはコネクタの組み合わせが珍しいから それはないかもしれないなあとは思ってたけど、 いくらなんでもシリアルケーブル自体が見当たらないとは思わなかった。 一昔前は一本 100 円でダンボール箱にたくさん入ってたんだけどなあ。

(12:43)

メモ

Pentium II のヒートシンクを外すにはトルクスの T8 が必要。 2mm の六角レンチでも開くことがある。

凄まじくいまさら感の漂うメモだ。

(12:47)

sync; sync; sync; sync;

その前に今日は何日、というか何曜日だっけ。 え、14 日の土曜日? やばいじゃん。8 月ほとんど半分終わりじゃん。 まずいなまずいなー。

(13:01)

本日のツッコミ (全1件) [ツッコミを入れる]

MoonWolf [Ripper復活期待age
new parserは今年度は無いらしいし、YARVもparserはかかないらしいのでRipperに特に期待です。
はやくCVSに入らないかなぁ]


2004-08-17

BitChannelをviewcvsとして使う

BitChannelをちょっと改造したらviewcvsっぽくなった。 ような気がする。

その副産物 (1) として read only モードが入ったらしい。

その副産物 (2) として文法がスイッチ可能になったらしい。

その副産物 (3) として「まだ見てないdiff」のバグが修正されたらしい。

(20:46)

本日のツッコミ (全1件) [ツッコミを入れる]

anonyomous [日本語表記のリンクとか、BracketNameにスペースを含む場合とか
一瞬対応したんだけど0.2.1にあげるときに上書きしてしまったので
対応を〜_no
日本語については設定で方法が選べれば良いのかなあと思うのだけど
前は確か単にURLエンコード下だけだった気がする
kakasi対応してみようかなあ。]


2004-08-18

TD4制作記 #6.1 レジスタ + セレクタ + ALU

(たぶん半年くらい前の記録です)

ようやく楽しい CPU 本体がやってきた。

どこからつないだものかな。 まず 5V と GND を全部つないでおくのは前提としよう。 んで IC は配線面から見て下図のように並んでいるのだが、

PC           I/O            regB          regA
161          161            161           161
                                                         ←隙間A (bit0-3,CK,RST)
 
ALU                         selectB       selectA
283                         153           153
 
                                                         ←隙間B
             carry          decodeNOT     decode3AND
             74             32            10

まずクロックとリセットは部品面でつないでしまうことにする。 この二つはほとんど隙間 A にあるのだが、 ここにはレジスタと ALU をつなぐループ回線もあるので非常に混雑している。 そこで裏表を両方使えばリード線本数を根本的に減らせるわけだ。

ということはクロックとリセットを先につながなければならないことが 自動的に決定するわけだ。

TD4制作記 #6.2 パスコン

しまったー! パスコン付けるの忘れてた!

つけた。配線がちょっとじゃま。

TD4制作記 #6.3 RST / CLK

(ここに半年くらいのタイムラグが)

ということはクロックとリセットを先につながなければならないことが 自動的に決定するわけだ。

とか書いてあるのにつながってないじゃないかよ! 4 ビット分の配線が邪魔すぎる……。

いいんだよ回路さえつながってれば!

(17:33)

Alpha EV7z

http://slashdot.jp/article.pl?sid=04/08/18/0136227&topic=25

これで終わりか……。

(17:38)

BitChannelバグ取り

http://dontstopmusic.no-ip.org/diary/20040815.html#p02

新しいページを作るときにエラーになるバグを修正しました。

自分とこでは HEAD を使ってないのがバレバレだな。 こないだの大改造はそろそろ安定したはずだし、うちもアップデートするか。 → した。

いいかげん 0.3 を出すか。 よし、DS20 のパッチ当てが終わったらやろう。

(18:02)

BitChannel / 日本語ページ名

http://i.loveruby.net/d/20040817.html#c01

日本語ページ名ですか……。うーん。

まず、なぜ日本語ページ名が実装されないかと言えば仕様が決まらないからです。 単に○○を実装すればよいと決まってればとっくに実装してます。 そこのところを御理解ください。

あと、設定で選択ってのは最後の手段にしたいです。 特にページ名は互換性がからむので、 設定を変えたらページが見えなくなる可能性があるからです。

いやそれでも自分とこだけでもなんでもいいから実装したいということならば、 bitchannelrc で実装してください。 そのときに再定義しやすいようにコードのここを変えてくれとかいう話なら できるだけ対応しましょう。

(18:28)

ruby test/drb on Tru64UNIX (1)

なんかもうわけがわからなくなってきたんだが、 いったん現状をまとめる。

発生しているエラーは Error と Failure でパターンが分かれていて、 F がこうなり

  1) Failure:
test_03(TestDRbSSLCore) [/usr/users/aamine/src/ruby/test/drb/drbtest.rb:132]:
<ArgumentError> exception expected but was
Class: <Errno::ECONNRESET>
Message: <"Connection reset by peer">
---Backtrace---
/usr/local/lib/ruby/1.9/drb/drb.rb:878:in `close'
/usr/local/lib/ruby/1.9/drb/drb.rb:878:in `close'
/usr/local/lib/ruby/1.9/drb/ssl.rb:170:in `close'
/usr/local/lib/ruby/1.9/drb/drb.rb:1108:in `close'
/usr/local/lib/ruby/1.9/drb/drb.rb:1090:in `open'
/usr/local/lib/ruby/1.9/drb/drb.rb:1014:in `method_missing'
/usr/users/aamine/src/ruby/test/drb/drbtest.rb:133:in `test_03'
/usr/users/aamine/src/ruby/test/drb/drbtest.rb:132:in `assert_raise'
/usr/users/aamine/src/ruby/test/drb/drbtest.rb:132:in `test_03'
---------------

E がこうなる。

  5) Error:
test_08_here(TestDRbSSLCore):
NoMethodError: undefined method `stop_service' for nil:NilClass
    /usr/users/aamine/src/ruby/test/drb/drbtest.rb:72:in `teardown'

また、全テストを一度に動かすとエラー件数はこんな感じなのだが、

tunami.loveruby.net ruby 1.9.0 (2004-08-09) [alphaev6-osf5.1b]
openssl 0.9.6g
    #1 1495 tests, 10614 assertions, 3 failures, 37 errors
    #2 1495 tests, 10613 assertions, 3 failures, 37 errors
openssl 0.9.7d
    #1 1495 tests, 10623 assertions, 4 failures, 37 errors
 
as500.loveruby.net ruby 1.9.0 (2004-08-09) [alphaev56-osf5.1b]
openssl 0.9.6g
    #1 1495 tests, 10613 assertions, 1 failures, 37 errors
    #2 1495 tests, 10616 assertions, 0 failures, 37 errors

test_drb*.rb を一つずつバラで動かすと test_drbssl.rb だけが失敗し、 エラーの数が減る。

    #1 20 tests, 34 assertions, 3 failures, 4 errors
    #2 20 tests, 34 assertions, 3 failures, 4 errors

また全テストを動かしたときは drb プロセスが生き残っている。

  ~/src/ruby/test % ps ax | grep ruby
   41799 pts/1    I        0:00.11 ruby /usr/users/aamine/src/ruby/test/drb/ut_safe1.rb druby://tunami.loveruby.net:3172 ut_safe1.rb
   41803 pts/1    I        0:00.11 ruby /usr/users/aamine/src/ruby/test/drb/ut_array_drbunix.rb druby://tunami.loveruby.net:3172 ut_array_drbunix.rb
   41808 pts/1    I        0:00.12 ruby /usr/users/aamine/src/ruby/test/drb/ut_drb_drbunix.rb druby://tunami.loveruby.net:3172 ut_drb_drbunix.rb

ソケットもたくさん……

  ~/src/ruby/test % ls /tmp
  druby10030.0  druby10340.0  druby39894.0  druby40240.0
  druby10037.0  druby25704.0  druby39906.0  druby41803.0
  druby10333.0  druby25711.0  druby40233.0  druby41808.0

さらに、ログを取ろうと思ってリダイレクトすると ruby が SEGV する。

(ladebug) where
>0  0x3ff800e93f8 in __kill(...) in /usr/shlib/libc.so
#1  0x3ff80213190 in UnknownProcedure18FromFile10(...) in /usr/shlib/libc.so
#2  0x3ff8013bfd4 in __tis_raise(...) in /usr/shlib/libc.so
#3  0x3ff801c97c8 in abort(...) in /usr/shlib/libc.so
#4  0x120057ee0 in rb_bug(fmt=0x1400088f8="Segmentation fault") "/usr/users/aamine/src/ruby/error.c":214
#5  0x1200a7374 in sigsegv(sig=11) "/usr/users/aamine/src/ruby/signal.c":446
#6  0x3ff800d5b40 in __sigtramp(...) in /usr/shlib/libc.so
#7  0x3ff80205964 in UnknownProcedure14FromFile22(...) in /usr/shlib/libc.so
#8  0x1200509f4 in obj_free(obj=5391766328) "/usr/users/aamine/src/ruby/gc.c":1153
#9  0x120050380 in gc_sweep() "/usr/users/aamine/src/ruby/gc.c":1026
#10 0x120050fc8 in rb_gc() "/usr/users/aamine/src/ruby/gc.c":1390
#11 0x12004f408 in rb_newobj() "/usr/users/aamine/src/ruby/gc.c":380
#12 0x12005ac58 in str_alloc(klass=5369351944) "/usr/users/aamine/src/ruby/string.c":44
#13 0x12005af50 in str_new3(klass=5369351944, str=5382187920) "/usr/users/aamine/src/ruby/string.c":120
#14 0x12005b00c in rb_str_new3(str=5382187920) "/usr/users/aamine/src/ruby/string.c":135
#15 0x12002a930 in rb_eval(self=5397852672, n=0x140cdab68) "/usr/users/aamine/src/ruby/eval.c":3610

環境は以下の通り。

  • ruby CVS HEAD 2004-08-09, 1.8.2 preview 2
  • openssl 0.9.6g, 0.9.7d
  • ccc 6.5 011
  • Tru64UNIX 5.1B

いま OS にパッチキットを当ててるので、 そのあとでもう一回試してから dev に報告する予定。

ああそうか、このさい gcc で起こらなければあきらめるというのも手だな。 gcc も試してみよっと。

(19:34)

ruby test/drb on Tru64UNIX (2)

通った! やったー!

勝利の瞬間

tunami:~/obj/ruby-g % ./ruby -I./.ext -I./.ext/alphaev6-osf5.1b ~/src/ruby/test/runner.rb ~/src/ruby/test/drb/test_*.rb
Loaded suite [/usr/users/aamine/src/ruby/test/drb/test_acl.rb,
/usr/users/aamine/src/ruby/test/drb/test_drb.rb,
/usr/users/aamine/src/ruby/test/drb/test_drbssl.rb,
/usr/users/aamine/src/ruby/test/drb/test_drbunix.rb]
Started
...................................................
...................................................
......
Finished in 52.285745 seconds.
 
108 tests, 447 assertions, 0 failures, 0 errors

まあ、代わりに openssl で落ちるようになりましたけどね。

(22:02)

RHG読書会reloaded #12 予告

今週末 21 日 (土) に開催です。 今回は場所がいつもと違うので要注意。

(04:19)

本日のツッコミ (全4件) [ツッコミを入れる]

なかむら(う) [うう、うちのNetBSD(もちろんgcc)でも
NoMethodError: undefined method `stop_service' for nil:NilClass
が出るので、あおきさんのデバッグにひそかに期待してたのですが…… orz]

青木 [む、他のOSでも起きるんですか。
何が共通点なのかなあ。]

なかむら(う) [複数のプロセスが実行されているときに、どっちかのプロセスでエラーが出たらnilになるのかなあ、とかまでは考えました。]

anonyomous [kakasi対応した。


* [[世界の中心出会いを叫ぶ]]
?sekainochuushindeaiwosakebu
* [[世界の中心で愛を叫ぶ]]
?sekainochuushindeaiwosakebu

今は反省している。]


2004-08-22

寒い

さむすぎ。

サムスピではない。

(04:31)

RHG読書会

一昨日は RHG 読書会 reloaded #12 でした。 記録はいつもどおり RWiki にあります。

さすがに 100KB を超えると分割しないと辛いね。

(04:33)

BitChannel / 日本語ページ名

うーん。BitChannel の日本語ページ名はどうしてものかなあ。 いろいろ考えた結果、 以下のようなていどで妥協しようかという気分になってきた。

  • リンク / URL には WikiName しか許さない
  • ページの一行目で「=」を使って別名を宣言できる
  • リンクは WikiName で書いても [[別名]] 形式で書いてもよいが、 Preview/Save の時点で WikiName 形式に統一される

日本語ページ名にはいくつか制限をかける。

  • 空白禁止 (全角も含む)
  • 句読点禁止
  • 記号禁止
  • 全角アルファベットは半角と同一視
  • アルファベット混在の場合は CamelCase でなければならない
  • 字数制限もするかも

なんとか [[...]] を回避したいのだが思いつかない。

できれば同音異義語対策もしたいけど、 簡単な方法が思いつかないのであきらめよう。

今回の案のポイントは、日本語ページ名は あくまでページを編集する時点でだけ有効ということだな。 セーブすると WikiName に統一されるので 「途中でエイリアスが変わったらどうする問題」や 「ページを作るときは後で日本語ページ名に直さないといけないの?」問題を回避できる。

……そうか、逆もやればいいんじゃないか。 別名が宣言されているページは、 WikiName を別名に変換して表示すればいいんだ。 これは意外といいかも。

(04:43)

本日のツッコミ (全1件) [ツッコミを入れる]

anonyomous [ページローカルな別名であればはてなみたいに無意味なリンクが出来にくいはずなので良いと思います。]


2004-08-27

締切に間に合わないことを全力で悟った人の数→(1)

人間あきらめが肝心だよね。

締切に間に合わないことを全力で悟った人の数→(1)

もう部屋の掃除が進みまくりですわ。

締切に間に合わないことを全力で悟った人の数→(1)

DEC 国士無双! (ドラ無し)

でっく

国士にしてはちょっとランクが低いが気にするな

締切に間に合わないことを全力で悟った人の数→(1)

Alpha たわーッ! (少年ジャンプ連載漫画必殺技口調で)

あるふぁ

……プラスいち (SPARCstationが)

(21:15)

ps

/proc/XXX をてきとーにラップするライブラリを (Rubyで) 書いたところまではよかったが ps のフォーマットのあまりの多さにげんなり。

(21:18)

御無沙汰です

日記を書く気がしなかったので放置してたら五日もあいていた。

Ripper さあ。 今週末にコミットするぜーとか言ったけどできるわけないって。 つーかその間にまた parse.y がアップデートされてるし (泣) なんか特定プラットフォーム (よくわかんない) で変な動作をするらしいので、調査中。

BitChannel がいじりたいけど、今は耐える……。

(21:37)