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.

 

raspberry pi books

 

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


JetBrains Launches IDE Services
09/04/2024

JetBrains has launched a new product suite for enterprises. JetBrains IDE Services is designed for use by large organizations with the aim of boosting developer productivity at scale.



Rust Twice As Productive As C++
03/04/2024

Google director of engineering, Lars Bergstrom, gave a talk at the recent Rust Nation UK conference and claimed that Rust was twice as productive as C++. Given how good Google is at C++, this is quite [ ... ]


More News


<ASIN:0465026567>

<ASIN:0465030793>

Last Updated ( Sunday, 19 February 2012 )