戻り値が存在しないActorモデルで再帰とかどう書くのかなー、とか思っていろいろ考えてたら脱線した。 Actorとか片道のgotoだよなー(???) てゆか末尾再帰もgotoじゃん。 再帰といえばフィボナッチ n-1とn-2を引数に呼ぶと二重に再帰しないとかあったよな [n-1, n-2]から[n, n-1]を返す演算? んでWikipediaみたらそういう定義も出てた。Rubyでいうとこう。 require 'matrix' def fib(n) (Matrix[[1, 1], [1, 0]] ** n)[1, 0] end まあ、そうだよなー。行列かっこいい。 ところでActorモデルじゃないとすっきり解けない問題ってあるのかなあ。うーん。