Choosing a Language Based on its Syntax?

15 points by gingerBill


munificent

People seriously think the declaration syntax is what gives a language its “character”. I do not get this train of thought in the slightest.

In principle, you could mostly slap any style of syntax onto any style of semantics and get a language out that works. However, people do not encounter a uniform random sample of all possible syntax/semantic combinations.

There are only a small handful of successful languages in wide use. Each of those languages is part of a lineage that directly inherits both syntax and semantics from previous languages. Their designers worked hard to make the language successful by appealing to users that already knew some other language.

Thus, in practice, there is a strong positive correlation between the syntax of a language and its underlying semantics. If you see a language that syntactically looks a lot like, say, Java, then the designers probably deliberately mirror both Java's syntax and semantics in their language.

Since syntax is by necessity absorbed before the semantics, it makes since that users treat syntax as a signal for the semantics.

wink

Sounds a lot like someone's opinion, for stressing how little opinions matter.

lorddimwit

Every language gets a novelty budget. If you want people to use your cool new feature, you’ll get more adoption if you’re conventional in other places.

josephjnk

100% agree.

I think one reason that so many devs take potshots at languages based on their syntax is that there’s a drive to have “a take” on everything, especially if that take is negative, even if the speaker is completely ignorant of the thing being discussed. I don’t know anything about Odin, but I can look at some Odin code and find some reason to have a preference. If I express that preference loudly enough I might even get some upvotes for it.

This applies to more than just syntax. Devs will loudly object based on vague notions of paradigm as well. Any language or framework labeled OOP or FP can trigger a storm of discussion, without the specific details of the thing actually having any bearing on the conversation.

(Copy/pasted from my Reddit comment on this article because I unfortunately saw it there before I saw it here)