Python, Lambda, Guido: is Language Design Just Solving Puzzles?
In this post, i'd like to deconstruct one of Guido's recent blog about lambda in Python.
Guido wrote a blog titled Language Design Is Not Just Solving Puzzles on at http://www.artima.com/weblogs/viewpost.jsp?thread=147358 [local copy Language_Design_Is_Not_Just_Solving_Puzzles_by_Guido_van_Rossum_2006-02-10.txt ]
First of all, is the title “Language Design Is Not Just Solving Puzzles”. In the outset, and in between the lines, we are told that “I'm the supreme intellect, and I created Python”.
This seems impressive, except that the tech geekers due to their ignorance of sociology as well as lack of analytic abilities of the mathematician, do not know that creating a language is a act that requires little qualifications. However, creating a language that is used by a lot people takes considerable skill, and a big part of that skill is salesmanship. Guido seems to have done it well and seems to continue selling it well, where, he can put up a title of belittlement and get away with it too.
Gaudy title aside, let's look at the content of his say. If you peruse the 700 words, you'll find that it amounts to that Guido does not like the suggested lambda fix due to its multi-line nature, and says that he don't think there could possibly be any proposal he'll like. The reason? Not much! Zen is bantered about, mathematician's impractical ways is waved, undefinable qualities are given, human's right brain is mentioned for support (neuroscience!), Rube Goldberg contrivance phraseology is thrown, and coolness of Google Inc is reminded for the tech geekers (in juxtaposition of a big notice that Guido works there.).
If you are serious, doesn't this writing sounds bigger than its content? Look at the gorgeous ending: “This is also the reason why Python will never have continuations, and even why I'm uninterested in optimizing tail recursion. But that's for another installment.”.
This benevolent geeker is gonna give us another INSTALLMENT!
There is a computer language leader by the name of Larry Wall, who said that “The three chief virtues of a programmer are: Laziness, Impatience and Hubris” among quite a lot of other ingenious outpourings. It seems to me, the more i learn about Python and its leader, the more similarities i see.
So Guido, i understand that selling oneself is a inherent and necessary part of being a human animal. But i think the lesser beings should be educated enough to know that fact. So that when minions follow a leader, they have a clear understanding of why and what.
Regarding the lambda in Python situation… conceivably you are right that Python lambda is perhaps at best left as it is crippled, or even eliminated. However, this is what i want: I want Python literatures, and also in Wikipedia, to cease and desist stating that Python supports functional programing. (this is not necessarily a bad publicity) And, I want the Perl literatures to cease and desist saying they support OOP. But that's for another installment.