proper tail recursion

えと…相互再帰の場合は、まだやってません。

インライン展開みたいのが必要になるかな、と思ったのですが…