4 ms·
There's a quote on the whiteboard in my lab that is (perhaps falsely) attributed to Larry Wall that says something like: > Programming languages are distinguis
by DonaldPShimoda 8y ago
There's a quote on the whiteboard in my lab that is (perhaps falsely) attributed to Larry Wall that says something like:
> Programming languages are distinguished not by what they make possible, but by what they make easy.
Practically all programming languages are computationally equivalent. The design of a new language simply seeks to answer the question: what should be easy for the programmer? Various languages are just different answers to this question.
- ken 8y agoThis seems unsatisfying. Most of the modern languages are choosing pretty much the same sets of features. I've been using them for years (decades?), and I couldn't tell you significant differences between most of these languages. There's maybe 3 major islands of languages today. Within each island, they make essentially the same things easy. The answer to a question like "Python or Ruby?", "C# or Java?", or "Rust or Go or C++?" mostly boils down to historical accident: what system did the original designer pick, which usually means which one just happened to have a good library for the primary goal of the first prototype.
- blotter_paper 8y agoI'd add some caveats to GP's comment, but I think it's mostly spot on. >"Rust or Go or C++?" Does one of these make memory problems easier to avoid? >"Python or Ruby?" One of these prioritises having a single way to do most tasks, while the other prioritises programmer expressiveness (simple example: "unless" is absent in Python). Thus one is easier to onboard newbies with and have them relatively quickly be able to read the code in their ecosystem, while the other allows skilled programmers to convey semantics more efficiently. I'll admit being mostly ignorant about the differences between Java and C#, but at least in general the languages you contrasted do make different things easier. Edit: grammar.
- lucio 8y ago>the differences between Java and C# Not much.
- cicero 8y agoAre you primarily targeting Microsoft platforms? If so, then C# might have the edge. Otherwise, you might prefer Java.
- dragonwriter 8y ago> One of these prioritises having a single way to do most tasks, while the other prioritises programmer expressiveness And yet, whatever they claim to prioritize, they aren't particularly different on those fronts. OTOH, they have radically different features even if both are dynamic multiparadigm languages, though it's true that decisions between languages often turn on ecosystem rather than language features independent of how different the language features are, and that's also true of Ruby vs. Python.