history

青木日記 RSS

<前の日 | この月 | 次の日>

2003-11-04

printf

突然、Ruby で printf が書けるかなあーっと思ってみた。 いやそりゃ書けるに決まってるけどな。 どのくらい短かく書けるかなあとか、ちょっと気になったわけだ。 でもよくよく調べると仕様がめんどくさい。簡略版にしておこう。 でも適当に書き散らしていたら (途中で) 満足したので放置して、 次は Haskell に printf (sprintf) があるのか調べてみる。 するとこういうものがあった。

どうやらこいつは Template Haskell というのを使っているようだ。 ようするにあれか。マクロみたいなもんか。

GHC 6 には添付されているらしい。 うちはまだ 5.04 なので、この機会にバージョンを上げておこう。

ruby-dev summary

ああ……やっぱりだめだ、スキップできるほど薄くないや。 うおー気分がのらねー

吉野家

そういえば 5/4 の日記で

全然関係ないけど近所の吉野家が食券制になってた。許せん。

とか書いたんですが、今度は元に戻ってました。 評判が悪かったのか?

多重代入

使いみちがわからない Ruby の仕様と言えばなんたってこれでしょ。

* = 1,2,3

まあたぶん直交性を重視した結果なんだろうけどね。 「a, b, = 1, 2, 3」みたいにカンマで終わるのが嫌だから 「a, b, *dummy = 1, 2, 3」とかしたい。 でも dummy なんて無駄な変数を作ってしまうのも嫌だから省略して 「a, b, * = 1, 2, 3」とできるとさらに嬉しい。 で、これができるなら「* = 1, 2, 3」もできないと直交性が低くなるだろう、 という理屈だな。(たぶん)

あと「こんなもんが書けたのかよ」つながりではこんなのもある。

a = []
[1,2,3].each do |a[1]|
  p a
end
名前
メールアドレス

<前の日 | この月 | 次の日>
2002|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|04|05|06|09|10|
2009|07|
2010|09|

Copyright (c) 2002-2007 青木峰郎 / Minero Aoki. All rights reserved. LIRS