

Spoken language affects thought as programming languages affect algorithms? - mtoledo
http://www.jakevoytko.com/blog/2008/06/16/testing-your-language-snobbiness/

======
Paperflyer
I am a native German speaker.

While trying to translate an article I wrote in English to German, I noticed
that many things did translate very poorly unless I significantly differed in
style. This is especially prominent in scientific papers. In English, you
would focus on short, easy to understand sentences. In scientific German, it
is absolutely necessary to write very difficult, convoluted sentences to avoid
ambiguity. This made the text significantly longer -- and harder to read.
However, the texts conveyed more detailed information and were overall more
precise.

My personal theory is, that the German language enforces logic and grammar
more rigidly than English, which makes it sort of more like a programming
language. Therefore, the complexity of a sentence is directly tied to the
complexity of its content. In english, I feel that it is more easy to simplify
things (deliberately!), which makes it easier to understand. On the other
hand, German behaves similar to programming languages: The more compact German
is written (without losing information), the less readable it will get -- try
Kant for example. Hence, the primary reason for German text being longer than
English text is often that it is written in rather simple (long) style. You
could write it more concisely, but you would lose ease of reading that way,
which is inappropriate for museums, of course. (Or you would lose information,
but germans are somewhat disinclined to do that: one THIRD of the worldwide
tax laws are German, only because we don't like to lose precision...)

By the way, that is why I prefer to buy English books for learning something,
as they are easier to read, while I prefer German books as reference, as they
tend to be more precise.

For the matter at hand however, I think that the spoken language is sort of
the "operating system" of the mind. It can only think within the boundaries of
the language and only the cleverest of minds can really expand their thoughts
beyond that limit -- by using the language in new ways. Most major philosopher
did that (i.e. Kant, Schopenhauer, Freud etc.). Example from Kant: "Handle so,
dass die Maxime deines Handelns jederzeit als allgemeingültiges Gesetz gelten
könne." (Act in such a way, that the "Maxime" of your actions may be
applicable as universal law at all times. Where "Maxime" is a new word meaning
sort of the "gist" or "idea" of an action) This is not normal German: It is
something new, more concise and more precise than normal German. It feels a
lot like a sentence in a programming language. It would take significantly
more words to express the same content in normal language without losing
precision.

So by learning English, I learned to express things in a more understandable
way. By learning C, I discovered quite many "syntactic" inaccuracies in normal
spoken sentences. Matlab thought me to think in vectors. Why should Swedish be
different? Or Lisp? Or Whatever?

~~~
bayareaguy
I don't believe language to be the operating system of the individual mind but
it definitely helps a society establish and maintain cultural values.

------
tx
Definitely true for natural languages. English is very pragmatic and "dry" to
my ear, perfect for engineering.

But I feel like all mainstream programming languages aren't truly "languages",
they're mostly dialects of X, where "X" is a fusion of Lisp and C, i.e. same
old ideas repackaged in different syntactic packaging.

This is why I am always skeptical about dramatic increases in productivity due
to a language switch. Good editor and decent chair produce similar boosts:
noticeable? Sometimes. Dramatic? No.

In my opinion two most important characteristics of programming languages are
recruiting and maintainability. The former is important because certain
languages attract better quality engineers and some are impossible to find
experts for. Maintainability speaks for itself: the code should be easy to
transform indefinitely, beat into shape, keep improving upon, etc.

~~~
technoguyrob
___But I feel like all mainstream programming languages aren't truly
"languages", they're mostly dialects of X, where "X" is a fusion of Lisp and
C, i.e. same old ideas repackaged in different syntactic packaging._ __

How are "normal" languages not the same old ideas repackaged in different
syntactic packaging? I'd say "dog" and "hond" aren't different ideas even
though one is in English and the other in Dutch. They're just the same old
ideas repackaged in different syntactic packages. Isn't that practically the
definition of a language? Some things that take me a sentence to say in
English can are only a few phonemes in Japanese, but does that mean Japanese
isn't a real language because it's the same idea in a different syntax? I'd
say syntactic difference is possibly the __ _defining characteristic_ __of a
language.

Perhaps this is simply indicative that the term "language" is innapropriate to
apply to a programming grammar.

------
jfarmer
[http://en.wikipedia.org/wiki/Sapir-
Whorf_and_programming_lan...](http://en.wikipedia.org/wiki/Sapir-
Whorf_and_programming_languages)

~~~
maurycy
This text, especially arguments against, bases on the strong distinction
between programming languages' syntax and semantics. Let me come up quickly
with two examples of fuziness between syntax and semantics of programming
languages, how the syntax affected the semantics.

While the semantics frequently does not vary within a given paradigm,
sometimes a different syntax gives you completely different point of view. For
instance, Polish notation, also known as prefix notation, makes it easy to
come up with s-expressions, what turns out to change the way we think about
programming.

Also, programming languages' syntax can work as reward&punishment tools. A
hash is slighty the same hash in all programming languages. Neverthless,
dynamic languages made it so easy to manipulate on them that in many ways
they've dominated the programs written in those languages.

It is also important to remember that a language is not an abstract contruct.
It has its uses, existing design patterns, good practices, as well as existing
libraries. "Meaning just is use". Even if you can say nearly everything in all
languages, sometimes it is harder to say one thing in another.

(as a boring guy I must say that I feel sorry that such indirectly thought
provoking post got only 7 points, lossing popularity with the Vista problem)

------
ken
I'm surprised nobody has quoted Alan Kay yet:

"And a lot of, I think, our confusion with objects is the problem that in our
Western culture, we have a language that has very hard nouns and verbs in it.
So our process words stink. So it's much easier for us when we think of an
object–I have apologized profusely over the last 20 years for making up the
term "object-oriented", because as soon as it started to be misapplied, I
realized that I should've used a much more process-oriented term for it. Now,
the Japanese have an interesting word, which is called "ma", which spelled in
English is M-A, "ma". And "ma" is the stuff in between what we call objects.
It's the stuff we don't see, because we're focused on the noun-ness of things,
rather than the process-ness of things, whereas Japanese has a more
process/feel-oriented way of looking at how things relate to each other. You
can always tell that by looking at the size of a word it takes to express
something that is important. So "ma" is very short. We have to use words like
"interstitial", or worse, to approximate what the Japanese are talking about."

------
silentbicycle
A language's common vocabulary ("dog", "bicicleta", "Handschuh") probably has
little effect on thought in a language. Idioms have great influence on
expression, however. They are crystallizations of the culture that has shaped
a language, and are often difficult to translate without this implicit
context.

For example, the Swedish word Lagom. Or, in programming, Common Lisp macros,
monads in Haskell, the act of defining a word in Forth, etc. (It's easier for
me to list idioms in a language other than English, because I'm immersed in
English most of the time.)

While trying to implement algorithm X in a language without garbage collection
(for example) is possible, the expression may become so burdened by otherwise
superfluous detail that the original meaning is obscured like a "needle in a
haystack".

~~~
asdflkj
Do you think the word "lagom" characterizes Sweden? It has just now occured to
me that words that are hardest to translate often seem to characterize the
culture of origin as a whole.

~~~
silentbicycle
That the language has a concise placeholder for such a value means that it's
probably culturally significant. I don't know how much it characterizes
Swedish culture as a whole, but making it as easy to consider such a thing as,
say, "truth" or "freedom" in English would probably influence discussions
about e.g. sustainability.

Another is that English doesn't have an immediate distinction between free-no-
cost and free-unrestricted, such as "libre" vs. "gratis" in Spanish. This has
led to some ambiguity in Open Source discussions, so the phrase "Free-as-in-
beer" gets used a lot now.

------
wheels
I think one flaw here, that certainly applies to programming languages is the
equation of concision and fitness. There are a lot of things that I would tend
to factor in -- for me expressiveness would be chief.

As a native English speaker that spends most of his time speaking German,
there certainly is an element of precision that permeates both German culture
and language. I've wondered at times if the link is more than coincidence.

~~~
noonespecial
I also have this experience. I am a native English speaker who learned German
quite young. I still think certain things in German, especially things that I
learned either in German, or during that period of my life.

As noted, "ja, genau" still echoes in my mind for total agreement. There just
doesn't seem as good an English equivalent!

~~~
schtog
why doesnt "Yes", exactly!" do?

~~~
noonespecial
It does. The same way "understand" does for grok.

------
keefe
I think that after a certain age, humans (I first wrote, users...) can't pick
up new languages as well as their first language. There is some physical
process that occurs in the brain. I am sure our native language affects our
thought processes, but I believe it is a moot point whether some language is
"faster" than our native tongue, we couldn't switch those hard wired neurons
if we wanted to.

------
sealedidentity
Great article. Yes, I do believe the language you think in and speak affects
the way your thought progresses.

I had an interesting discussion following this article at work and a colleague
of mine who is a non-native speaker of English told me that when he thinks
programming/ engineering English seems to work quicker in thought progression
compared to his native east Indian language.

------
maurycy
”The boundaries of my language are the boundaries of my world”, as Ludwig
Wittgenstein said.

~~~
lg
Causation probably runs the other way.

~~~
cglee
probably both ways, and probably in a far more complex fashion than we
currently understand

------
YuriNiyazov
Pinker in "The Language Instinct" persuasively (at least for me) argues that
the Sapir-Whorf hypothesis, at least as far as human languages are concerned,
is _false_.

~~~
andreyf
He argues it well for fundamental things, but I think it falls short because
he doesn't touch on abstract notions, like 'personal freedom', 'federalism',
or 'separation of church and state'. There's a line that can be re-drawn
between what is "language" and are "ideas", and the Sapir-Whorf hypothesis
holds depending on where you draw that line.

A lot of our thought is based on frameworks of metaphors, the vast majority of
which are learned, not discovered on our own.

