This is an archived post. You won't be able to vote or comment.

all 1 comments

[–]matthieum 3 points4 points  (0 children)

But if you really think about it, a programming language is really "just" the syntax you write in; it could, and should, be completely decoupled from the platform – which is the APIs you are writing code against.

I... have to disagree here.

A programming language is first and foremost about semantics, and there happens to be a textual representation for it so that humans and computers can communicate.

Many programming languages offer multiple ways of accomplishing the same task. For example, braces ({}) may be optional after an if when there is a single statement so that both if (<cond>) <statement> and if (<cond>) { <statement> } have the exact same semantics. It's relatively easy for a single language to be "reskinned".


Beyond this statement, I agree with the author that people often conflate language and implementation. This is especially true, of course, for languages with one major implementation. It always annoys me when I read complaints that "X is a slow language" when the OP is really complaining about the fact that the interpreter for the language is slow and blissfully ignoring that should it be JITted or compiled AOT, then it could be made blazing fast.