戻り値が存在しない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モデルじゃないとすっきり解けない問題ってあるのかなあ。うーん。