2006-12-25から1日間の記事一覧

疑問:特異クラスの構文の不思議

Rubyの特異クラスは以下のように書きます。 class <<obj # ... end ここで、"インスタンスに固有なクラス」を仮想的に指定しています。これが特異クラスです。 ところで、どうして " たとえば、Rubyでは、クラスの継承関係は"Child 継承関係と、クラス・インスタンスの関係は別なので、継承関係は "インスタンスの関係は "インスタンス" よりも "インスタンス 特異クラスには名前がないのですが、仮にεと書くと、 class ε >> obj # ... end のように書くのが自然ではないかな、と思いました。ここでεを省略すると、 class >>obj # ... en…</obj>

修正の容易さ

Rubyでは、システムに組み込まれているクラスに対しても、メソッドを追加したり、修正したりできます。これは非常に強力であると同時に、危険でもありますね(危険であると同時に、非常に強力でもあります)。 プログラマを信頼している言語、と言ったらちょ…

if-elseではまりました

Rubyで5分ほどはまってしまったプログラム(のエッセンス抽出)。以下のプログラムはなぜCを表示するか? a = false b = true if a puts "A" elseif b puts "B" else puts "C" end #=> C正しくは以下。 a = false b = true if a puts "A" elsif b puts "B" e…