
It's Not About the Syntax – Why Language Doesn't Matter - philk10
http://spin.atomicobject.com/2015/07/15/language-doesnt-matter/#.VaZrzkLdxVk.hackernews
======
nbouscal
Spoken like someone who has only learned languages from a single paradigm.
“Programming languages are built on a common conceptual foundation.” This
simply isn't true. The conceptual foundation of Java is quite distant from the
conceptual foundation of APL, which is itself distant from that of Haskell,
which is itself distant from that of Prolog. If you know one, you don't
automatically know the others.

If you're only talking about mainstream OO languages, the point holds, but
those are really more like accents than they are languages. Speaking in a
British accent won't let you communicate in a fundamentally different way, but
speaking in Mandarin actually will.

In short: It's not about the syntax, but it _is_ about the semantics.

~~~
mykhamill
Spoken like someone who only knows one natural language. As the article stated
all languages are about communication. Each language has its own syntax (ie
words and word order) but the concept of a rose or money is the same, the
concept of an action is the same as is the concept of a pronoun otherwise
people would not be able to translate between languages. The semantics of a
language are often tied up in the culture of the language.

When it comes to computer languages similar principles are at play. The
concept of a list or array or matrix of values is common across a wide variety
of language types for OO to Functional to Declarative. As is the concept of
IO. The need to communicate with something outside of the program. The fact
that some languages point out the and IO operation is about to occur does not
mean that the paradigm does not use or need them.

In short: Speak English when you are in Britain, yorkshire when in Yorkshire,
cockney when in London, and Mandarin when in China. Use the appropriate
language for the task at hand or get an interpreter.

~~~
nbouscal
I speak four natural languages. I don't love the analogy, because I think
differences between computer languages are more significant than differences
between natural languages. That said, there are still more differences than
just who you can speak with. Example off the top of my head: if you think in
Mandarin, the future is behind you and the past is in front. You mention
actions being the same, but the way you think about actions will be very
different if you think in a language with few tenses (Mandarin) compared to
one with many (Romance languages).

Obviously both computer languages and natural languages have some things in
common, but they also have significant differences.

