Of all the programming languages in the world, the one that most deeply deserves - nay, requires - my scorn is python. Not because it's the worst offender out there, but because it's the most well-liked offender. PHP programmers know they're etching instructions onto a tablet of combustable dried shit, praying it doesn't explode in their face. BASIC programmers can look back with a fond, self-aware nostalgia. But "pythonistas" - a term more cringe-worthy for the fact it's self applied - hold fast to their delusions.
| This is a Python |
Indeed in the great sea of programming languages, Python is not a bottom feeder. Python dwells in the aphotic zone, a small height above the ocean floor. The programming language aphotic zone is a region where the sunlight of consistent design and sound theoretical bases has barely penetrated. It's marine analogues are creatures such as the vampire squid, floating languidly in the depths with its huge suck-hole mouth slurping up dead plankton and fecal matter. Or the female anglerfish, with its disturbing method of emitting pheremones to find partners so it can strip them of innards, brains and heart and absorb them into its flesh. Creatures who look smugly down upon things scurrying across the sea floor, while sometimes catching glimpses and silhouettes of those that live above it.
The analogy is fairly apt - when pythonistas glance up they can sense dimly the shadowy outline of a LISP or Smalltalk. But rarely do they think to do so. Instead they focus their eyes below. "We have an interpreter!" - they boast smugly to the C++ers, grimly toiling with angle-brackets in the sediment in a futile attempt to plug the endless segfaults in the ocean floor - "you don't even need to specify the type of a variable! Behold our lambdas!".
| This is a Python. If you look closely you can see the atrophied, eyeless remnants of the functional and object-oriented paradigms it has tried to absorb. |
At their core, python fans don't know any better. They have ascended a short way from the dregs of programming languages and thinks this is as bright as it gets. They simply can't comprehend anything better, even when it stares them in the face. From primitive beginnings python has blindly crawled towards things other languages have embraced decades before. And it is crawling - nothing is implemented in full. Lambdas and functional programming in general is castrated in python, partly because it's creator clearly doesn't understand it. Everything is an object - er, sort of, for a given value of object - but it's tacked on and you constantly have to pass in an explicit reference to self.
The fact of the matter is most python programmers they can't perceive what is above them. They're not interested, either because it makes them think and thinking is hard, or because they are non programmers and do not care (hence the popularity of python among scientists). It is the only logical explanation I can give to the phenomena of people writing thousands of lines of code in a language that, at it's heart is for children.
I leave you with a warning - pythonistas will try pass of every flaw I mention as being somehow benevolent because it's "pythonic". It's a mantra of anti-intellectualism oft repeated, a mantra only slightly less beloved than "there's only way to do it". And maybe python is just pythonic, but quite where "straight-forward and simple" becomes a "a collection half-assed, ad-hoc selections of concepts from better languages, wedged into a dumbed down ALGOL imperative framework running at the speed of molasses" is an exercise best left to the reader.
I do like the import syntax though.
No comments:
Post a Comment