Ask HN:Why is Perl so dwarfed in data science by Python?
Data scientist here. Readable code is important in data science. People rely on our products to be based on solid numbers and logic, sometimes without any form of external validation. We can&#x27;t just scribble line noise in a REPL until we get some output that looks vaguely reasonable. We need to be able to actually read the code and know that what it&#x27;s doing makes sense.<p>So readability matters. And Python is one of the most readable languages out there. It remains relatively readable even as the code and data structure get very complex. Its syntax resembles math and pseudo-code more closely than other languages. It feels more like a tool of thought, not just a bunch of alien hieroglyphics you have to write to crudely and inefficiently express how you really think about the problem.<p>Perl, on the other hand, is one of the least readable languages for a general audience. It is not a tool of thought for non-experts. Its syntax is ugly, obscure, overly symbol-laden, and beloved only by gurus. The supposed &quot;feature&quot; of TIMTOWTDI just makes it more obscure.<p>The thing I can never get over with Perl is that it didn&#x27;t even have a sane, idiomatic notation for functions until recently (and even today I suspect it&#x27;s not widely adopted). There was no such thing as just defining a function f(a,b) of multiple named formal arguments. You had to use some special magic variable and people start talking about shift operators or some such nonsense.<p>This is the point at which I start saying &quot;yes, all the language choices are Turing complete, but that doesn&#x27;t mean they&#x27;re all equally effective choices&quot;.