To Iterate is Human, to Recurse, Divine

November 30th, 2008 by John Nelson Leave a reply »
Escher's Hands

Escher's Hands

I have a fancy for functional programming languages; I find recursion intuitively elegant. However, in my mental processes, recursion seems to be a dangerous flaw.

This trade may return 5% if event A occurs-> This trade could return 10% if event A & B occur -> This trade could return 20% if event A & B & C occur -> Well, this trade has returned 20% and now people are going to pile one and it could return 30% -> … -> This trade could return 1,000,000%.

My mind selectively traverses the path on the recursive tree that is most favorable while ignoring the (huge) selection of paths that do not lead to the favorable end-node. Even worse, I forget the necessary conditions that lead to the selected outcome! A favorable outcome is pleasurable and I am a pleasure-seeking animal; It seems that this also applies abstractions.

Furthermore, the recursive thought seems to lack a terminal condition. Instead of building a balanced tree of possibilities, the favorable path gets many more steps, leading to a gross asymmetry. My mind stops traveling only after it has exhausted mental resources.

Mental recursion is dangerous without continuous checks.

* Note to the non-programmer: The title of this entry is actually an oft-repeated L. Peter Deutsch quote.

Advertisement

Leave a Reply