再帰を理解するためのたった1つの方法

再帰の壁は非常に大きいと思う。再帰を理解できてる人にはわからないかもしれないが、本当に大きい。

http://d.hatena.ne.jp/nagaShima/20081115/p2

『どうわからないのか』ってのは、自分が知ってるだけで2パターンあったりする。

失敗例その1:思考停止してしまう

『Aの中にAが含まれる』という事実自体に驚いて、その先が考え付かないパターン。今まで再帰的な物事の見方を経験していなくて具体例が思いつかない、具体例が思いつかないから自分で再帰を作ることもできない感じかな。

失敗例その2:無限に展開してしまう

特に再帰関数で頻発するパターン。関数をひたすら展開してしまい、奥の奥まで無限に思考してしまって頭の許容範囲を超え、結果「わからない」となってしまう感じ。「再帰の止め所がわかってないのかな?」ってときどき思ったりする。

成功例:『再帰を理解するためには、再帰を理解する必要がある』

↑の文章を見て 『つまりどういうこと?』 って考え込んでしまうのが失敗例その1のパターン、『これ、永久に理解できないよね』って考え込んでしまうのが失敗例その2のパターンです。さて、それじゃこの文章を理解するために、何が必要か……それは『再帰とは、すなわち再帰である』と理解することが必要だったりするんだと思っています。再帰を正確に記述するには再帰するしかありません。
このあたり「難しい概念を理解している人は、その概念を他人に対し簡単に説明できるか否か」って話に繋がってくるかなー。
ってか誰か助けてww 助けて id:dankogai