相互再帰

http://ja.wikipedia.org/wiki/%E7%9B%B8%E4%BA%92%E5%86%8D%E5%B8%B0
2つの関数が互いを使って定義されているもの。
プログラムだと、関数Aから関数Bを呼び出し、関数Bから関数Aを呼び出す方式。

参照透過性の成立している言語では、相互再帰はあまり問題を生まないが、破壊的操作を行う関数同士で相互再帰を行うと、
ロジックが複雑になりすぎて、カオス(混沌)となり、バグの温床となることが多い。

らしい。
あんまりやらないほうが良さそう。