夕食時の話題。
キーワード代入。 実はキーワード引数ってキーワード代入があればいいんじゃね? という話。
(verbose:v, noop:n) = {:verbose => true, :noop => false}
みたいなことができて、 同じ文法でパラメータリストが書ける、とか。 ようするにパターンマッチですな。
ピザを 6 つに切るべきだった、 ということを切り終わってから述べたことによって わたしは非難された (英訳、5 点)。
引数なしの super が特別扱いされるために 引数ゼロの super を super() と書かざるを得ない件について。 「このメソッドの引数リスト」 を表現する文法があればよいのではないかという話に展開。 「*」で「このメソッドの引数リスト」が表現できたらよいのではないか、とか。 メソッドのデレゲートも
def m(a, b, c = nil, *d, &block) @obj.m(*) end
で書ける。人呼んで star system (?)。 いかにも Rails 方面の人が濫用しそうだよね、 という点で意見の一致を見る。
バーナー 4 発 (クアッドバーナー) の気球。 松江は気球飛ばし用地として有望。
第 3 回「protected はどんな名前にすればよかったか」会議〜。 protected という名前は実は前田さんの提案であったことが 昨日明らかにされたわけだが、 非常にミスリーディングな名前であることは異論がないと思う。 Rails 方面の人々はよく protected と書いているが、 そのほとんどすべてが間違いなのではないかという説もある。
カニクリームコロッケは俺が独占していたわけではない。
で Ruby の protected は C++ で言えばfriend みたいなもんなので、 いっそ friend にしたらいいんじゃないかとか、 いや P で始まんなきゃだめだから priend だとか、適当なことを言い合う。 C++ の本のどれかに、フランス語で「友達」みたいな意味の単語で 「ぽるてーじゅ」(?) とかなんとかいう語を使うという案が載ってたと思うんだけど、 なんだったかなアレ。 あ、C++ じゃなくて『エキスパートCプログラミング』かも。
(09:42)
昨日の名言。 「俺がアルコールに依存してるんじゃない、 アルコールが俺に依存しているんだ」
笹田さんの 「test/unit とか optparse が動かないとき用のテストが欲しー」 というリクエストにより、 make test のちょっと改良版みたいなものを作り始める。
昼ごはんのあと、中田さんが酒を買っていた。
(13:23)
ピザを 6 つに分ければよかったということを あとから指摘して怒られたというのは不正確である、 その前日にもみんながゴマを思いきりすりまくったあとに 「ゴマはあまり完全にすらないほうがいいらしい」 と発言して非難囂囂であったというコンテキストがあればこそ問題であるのだ、 ということを書け、と怒られたので、謹んでここに追加する次第である。
flock でブロックしている間はシグナルハンドラが動かない件。 当初は「ささださんがコマンドを打つとうまくいかない」 という説が有力であったが、詳細な検証の結果、 1.8.x の細かいバージョンによって動いたり動かなかったりするということがわかった。 昼食時にまつもとさんが事情を思い出し、謎はすべて解けたーということで解決。
String#each について。 1.9 では String#each がなくなったわけだが、 やっぱり不便でしょうがない。 なんで不便かとつらつら考えた結果、 Array (Enumerable) のメソッドよりも String のメソッドのほうが ぜんぜん使い勝手がいいということに気付いた。 ということで、Array にもっとメソッドを追加しようよというメールをいま書いている。
(14:05)
子供自慢大会会場と化すオープンソースラボ。
VC++ 8 だけで落ちるバグ発生。 malloc した領域の未初期化 (?) が原因らしい。
まつもとさんと笹田さんは昨日からずっと パラメータのノード構造の変更をやっている。 なかなか難しいらしい。
気球飛ばし地として有望なのは松江でなくて「やすぎ」らしい。
(16:46)
ファイバ入れよう説。 ここで言うファイバとはノンプリエンプティブなユーザレベルスレッドのこと。 別名「しょぼいスレッド」。 ファイバがあればけっこう速い generator.rb が書けるよとか。
むしろこるーちん?
また ripper の make test-all でバスエラーになっていた。 パーサ本体の変更に Ripper のアクションが追従してなかったのが原因、修正。
この合宿中はバージョンが「年・月・日」までだと危ない。 常に svn up しまくっていないとヤバい変更が入ってて修正されてないことがある。 もっとも、svn upしても修正されてないこともある。 会場ローカルなその場しのぎパッチが流通している。
(17:52)
Copyright (c) 2002-2007 青木峰郎 / Minero Aoki. All rights reserved.
ずばりこれではないでしょうか>「ぽるてーじゅ」(?)
http://dictionary.cambridge.org/define.asp?key=17068&dict=F&lang=F
("pote"+"s"でかつ、フランス語のsは濁音?)
いま『エキスパート C プログラミング』を見たら
protege (お気に入り、子分。e はアクサン付き) でした。
「ぷろてじぇ」だったか…… (全然違うじゃん > 俺)。