«前の日記(2006年05月22日) 最新 次の日記(2006年05月24日)» 編集

Matzにっき


2006年05月23日 [長年日記]

_ 依頼

ある程度名前が「売れてしまった」せいか、最近、仕事の依頼が多い。

まあ、「原稿書いてください」くらいなら、分量がたいしたことなければ ほいほい受けてしまうのだが、なかには躊躇するものもある。

たとえば、O'Reilly Networkから来た以下のようなもの。

200行くらいのプログラムをサカナに「コードの美しさ」について語ってください。 2000ワードくらい(もちろん英語で)。

ここまでなら、どうということはない。しかし、次の部分を読んで驚愕した。

他にも何人かに頼んでいます。 すでに引き受けてくださった人にはBrian Kernighan, Guy Steele, Diomidis Spinellisなどがいます。あなたも引き受けてくださるとありがたいのですが

えーと、こんな有名人の中でなにをしろ、と。

_ 日経Linux初校

日経Linux 7月号初校を校正。 今回は39行もオーバーしたので削るのに奔走する。 しかし、いつもながら、日経の編集の人はプロの仕事をするなあ。

_ 『メガネっ娘のほしのあきがPSPに熱中! - SCEI「カズオ」イベント開催

「カズオ」ってのは数独のことなんだね。 数独についてはRubyQuizのネタにもなっていて、 少し知ってはいたんだけど、こんなに注目されていると走らなかった。

で、ルールは知ってても遊んだことはなかったので、実際にやってみる。 ksudokuをインストールして遊んでみると....これは面白いわ。 あっという間に時間が過ぎてしまう。

_ [Ruby] argument list 2.0

Ruby2では、引数リストについて修正を加えようと思う。

具体的な変更点は以下の通り。

  • 引数を渡す側では「*」単項演算子(リストの展開)を任意個置けるように。
  • 引数を受け取る側では、「*」単項演算子(リストとして受け取る)の後ろにも必須引数を置けるように。「*」単項演算子は最大1個。

つまり、

def foo(a,b=1,*c,d)
  p [a,b,c,d]
end

a1=[9,8,7]
a2=[6,5,4]
foo(1,2,*a1,3,*a4,5)
# => [1,2,[9,8,7,3,6,5,4],5]

という感じ。

ただ、問題が二つ。

  • nodeの構造が変わるのでripperとYARVの対応が手間
  • このあたりyacc記述が入り組んでいて、どこから手をつけていいのかよく分からない

取り掛かる前には「やればすぐ」と思ったのだが、 特にyaccが難物で、全然進まない。


«前の日記(2006年05月22日) 最新 次の日記(2006年05月24日)» 編集