I will never forget the brain lock I encountered the first time I had to deal with a relatively small program that made extensive use of closures.  In hindsight the program was well-designed and clearly written.  Yet I simply could not understand it for over at least half an hour.  And even once I did figure it out, it took days before I could truly digest what made that design work.<p>A couple of years later on the Perl 5 core mailing list I responded to a claim that a good Perl programmer could support any well-written Perl program with a key line from that program.  From the volume of the squawks I got, a collection of good Perl programmers generally were not prepared to understand that code, despite years of experience in a language that fully supported closures.<p>I will not claim that it is impossible to imagine effective closures.  I know there are people who are far more intelligent than me, who think very differently than I do.  If history played out again a few times, perhaps it would play out differently.<p>But I say without false modesty that I'm a significantly above average programmer, and I am convinced that I personally could not have come up with effective closures on my own.  And I've known quite a few good programmers who I am sure could not have done it.  And I've never personally known anyone who has left me convinced that they <i>could</i> have done it.  And finally the history of how closures were invented does not support the idea that someone imagined what could be done with them and then invented them for that reason.