Cartoon - Recursion
Written by Mike James   
Sunday, 05 February 2012

This week's selected xkcd cartoon of the week is about the most feared of programming concepts - recursion. And, to paraphrase a well known quote, if you don't fear it, then you don't understand it.

OK, perhaps you do understand it, but it is in the nature of recursion to occasionally mislead and surprise even the most experienced programmer. You probably don't need to fear it, but you do need to respect it for the powerful construct it is.

In the cartoon, the player of a game starts another, similar, game within the game and this could involve the players in this game starting another game and ...

 

Tabletop Roleplaying

More cartoon fun at xkcd a webcomic of romance,sarcasm, math, and language

 

Of course there are games where you can indeed create real world objects and perhaps the most recursive is to create a computer itself - shades of the Matrix.

Recursion has many facets. On one level it is just the fourth flow of control - sequential, conditional, loop and recursion. On another levels it leads to difficult paradoxes and perhaps even the experience of consciousness. The idea is that we are conscious because we observe ourselves - the ultimate act of recursion.

Many programmers and philosophers refer to the "strange loop", which is the idea that a self-referential loop has more going on than meets the eye. If you want to know about these ideas then read: Gödel, Escher, Bach: An Eternal Golden Braid (see sidebar). A book that is more focused on the strange loop idea is I Am a Strange Loop (see sidebar).

Related Articles

If you would like to know more about recursion - then see Recursion.

 

C book

 

Comments




or email your comment to: comments@i-programmer.info

 

To be informed about new articles on I Programmer, subscribe to the RSS feed, follow us on Google+, Twitter, Linkedin or Facebook or sign up for our weekly newsletter.

 

Banner


Google Launches Developer Program
07/06/2024

Google has created the Google Developer Program "to help developers build, learn and grow". The program will give developers access to a range of new tools and benefits such as technical assistance fr [ ... ]



DuckDB 1.0 Released
04/06/2024

DuckDB 1.0 has been released following a successful release of the 0.10 version back in February that introduced a version of DuckDB with both forward and backward compatibility for DuckDB's storage f [ ... ]


More News


<ASIN:0465026567>

<ASIN:0465030793>

Last Updated ( Sunday, 19 February 2012 )