← Back to context

Comment by noelwelsh

3 years ago

Indeed it is a bold statement, but if one can't make overly grand claims on the Internet then where? :-)

I'm interested to know to where you find the simplicity in Python. My guess:

- the ecosystem

- portions of Python that date back over a decade + perhaps some of the modern string handling and maybe data classes

My overall point is that the Python community relentlessly beats the drum on simplicity, but modern Python is not a simple language for any reasonable definition. I believe they have increased the complexity of the language while claiming that these complexity-increasing changes are in service of simplicity. I further believe that mountains of this complexity could be avoided with better language design and a better implementation.

If Python isn't simple, which of the dominantly used programming languages is?

  • Simpler than Python? Definitely Go. Probably Java and JavaScript. Maybe even C, although the whole "undefined behaviour" thing is a different kind of complexity.

    I'd consider the complexity of Python comparable to that of C# and Swift - it's a similar "kitchen sink" language.

    C++, of course, is in a league of its own.

    • Java and C are neither simpler nor easier than Python where the rubber meets the road: making the computer do something you want it to do. Not even close. Java requires a fair amount of arcana just to get started (relative to python) and C is a simple language which pushes all the complexity onto the programmer. Java, like python, has some really deep rabbit holes when you dig into internals, and C has so much complexity in the necessary tooling.

      I think Go is possibly simpler than Python. The syntax is smaller, no method overriding, and does not really have internals to the same depth as a VM language.

  • Matlab is pretty simple. I've taught it to kids with no programming experience in the morning, and they were productive with it by the end of the day.