3 ms·
I found this article to be profoundly weird in a lot of ways. It's not quite suffering from the "igon value" problem, but gosh does it come close. It's hard to
by jolux 8y ago
I found this article to be profoundly weird in a lot of ways. It's not quite suffering from the "igon value" problem, but gosh does it come close. It's hard to measure programming language popularity, and most estimates I've seen have Python neck and neck with JavaScript with regards to popularity. Plenty of other languages have simple syntax and are easy to read, the only thing I would say Python has that is clearly superior is availability of packages and community support, (and even then JS has got to be close there) which are undoubtedly huge, but I think it's fallacious to assume that those reflect intrinsic technical worth.
- tormeh 8y ago>Plenty of other languages have simple syntax and are easy to read As easy as Python? That's a very high bar. We all agree (I hope) that JavaScript requires linters (plural) to write well. Rust/Scala/Haskell have unpleasant learning curves. Java is verbose and clumsy. Basic and Pascal have fallen into disuse. Go may be simple, but it's syntax is more symbolic and less English-like than Python. Don't get me started on Perl and the lisps. C/C++/PHP have more footguns than features. I'm not a Python die-hard, but it's obvious that it's superior when it comes to ease-of-use and learning curve. It's very similar to how people write pseudocode.
- jolux 8y agoI will argue that learning curves are similar with Ruby, SmallTalk, ML, and Scheme to Python. Logo is the original teaching language, and I think is similarly easy. It's my belief that people exaggerate the learning curve of Haskell, but whatever, I'll grant you that. If your criteria for readability is "English-like" I think you're missing a lot of what makes Python so readable in the first place. It is not very English-like at all. Compare to say COBOL, which actually had English-like readability as a design goal and was by all accounts an unmitigated disaster. AppleScript has a similar reputation for being a "read-only" language because of how difficult it is to pick up from reading it. What makes Python readable is having a small number of concise syntax constructs that compose into complex programs, the same things that make functional code readable. The presence of words vs operators is probably important, and Haskell tends towards the latter, but the ML family doesn't, and Lisps are plenty readable if you keep them simple. There's a reason that SICP and HTDP use Scheme, the latter using a gradually larger subset to make it less intimidating.