Ruby Reference Manual
マニュアルには書いてないけど、再帰呼び出しがあるメソッドについては、aliasは関知しない。なにもしないんだから、書くまでもないとも言える。
def fact(n)
if n==0
1
else
n * fact(n-1)
end
end
alias fact2 fact
puts(fact2(3))
def fact(n)
puts "new fact"
end
puts(fact2(3))
まあ、当然か。ちゃんと対応しようと思うと、C言語で定義されたメソッドとか考えるとめんどくさくなる。