Hacker News new | ask | show | jobs
by jcranmer 3378 days ago
But the evidence for programming languages is that the Sapir-Whorf hypothesis is completely and totally false. To take a topical example, a lot of people complain that the idea of classes in JavaScript is antithetical to its underlying design philosophy. Presume that the statement is true (it's debatable), and you'd find that many of the people who push for this feature are likely to be those who have known no other language than JS. Their views are not being shaped by the language itself but by the views of those who taught the language, who like the paradigms of classes and came up with multiple, sometimes somewhat incompatible, ways of expressing that paradigm in JS.

The problem of Blub is less that people are incapable of understanding concepts, but that the people explaining concepts are incapable of explaining them. I've yet to find a feature that I couldn't explain to a "Blub" programmer. If you take, e.g., call/cc, sure, describing that to a mediocre Java programmer would probably elicit a blank stare. But I could instead describe the yield operator and get excited responses on to where it would be useful, despite it being basically the same thing as a call/cc (modulo issues like saving the call stack).

The evidence for natural languages is equally poor, although it's obfuscated by the extreme difficulty of separating culture from language in early childhood instruction.

1 comments

Do you have to manipulate text? Perl is probably better than C for that.

Do you have to write a program that operates on lists? Lisp probably is better than Java.

Do you have to write a formal proof? Coq is probably better than Python.

Do you have to write distributed networking code? Erlang is probably better than PHP.

How can the strengths of each language not be direct support for linguistic relativity? All that means is that certain concepts are easier to manipulate and understand in certain languages.

> How can the strengths of each language not be direct support for linguistic relativity? All that means is that certain concepts are easier to manipulate and understand in certain languages.

The principle of linguistic relativity is that language (particularly L1) influences the thought patterns of those who use it. It does not state that certain thought patterns are easier to express in various languages.

To demonstrate support for linguistic relativity, it's not sufficient to say that Perl is better at text manipulation than C. You'd have to say first that Perl programmers tend to view generic programming problems (say, how to route email messages) as questions of text manipulation rather than other paradigms. You would also have to show that this paradigmatic shift is a result of the language itself, and not other factors including (but not limited to) language instruction or library availability.

In terms of natural language, sure, I can't translate the sentence "Time flies like an arrow; fruit flies like a banana" effectively into French (since the different senses of "to fly" are «voler» and «mouche»). But that doesn't matter for linguistic relativity. The linguistic relativity argument is over whether or not the difference between English tending to use "do" for its modals precipitates a different worldview than the French «faire» ("make").

> You'd have to say first that Perl programmers tend to view generic programming problems (say, how to route email messages) as questions of text manipulation rather than other paradigms.

Which I think you could actually make a strong case for. It's very natural in Perl to reach for a regular expression instead of other tools, and to join data into and split data out of strings, since the core data types don't distinguish between numerical and string data, the operators do.

The first problem here is that you mentioned Sapir-Whorf, and Saphir-Whorf does not have a precise definition. You simply be talking past people with respect to how strong a degree of relativity you are claiming.

I can agree that different languages are more suitable for different purposes and affect how we express different problems. That is consistent with a very weak form of Sapir-Whorf. If that's the extent of your claim, then I don't think there's much controversy over that specific claim.

What's the difference between 'determines' and 'influences'? I mean isn't that just a sliding scale? If a concept is incredibly difficult to formulate in a given language, could it not be said that the language has limited my thinking?
Sapir-Whorf is really a family of hypotheses, not a singular one. The differences being degree of influence from language on thought, and amount of feedback based on culture/experience. If my language lacks the concept for an ocean or sea, but I live next to one, clearly we'll find a way to express "seaward" and other related concepts, though the language may require more complex circumlocutions or inventing/borrowing words. But returning that concept and word to my inland relatives may be nigh impossible, because their experience (not just language) doesn't allow them to consider such a thing as even real. They may accept the word, but not the reality of it until witnessing it.

And, yes, if a concept is hard to express in a language that it, potentially, limits your thinking. If all thought is just language, then it may even bar thinking of concepts. But that gets into another debate, is language the key to thought, or is language an expression of thought. We can all probably conceive of things or maybe even have witnessed things which we are unable to articulate in many or all existing languages, but language expands or we adopt new languages (such as mathematics and calculus in particular to express physics). The precise motion of the planets could be explained in plain English, through complex circumlocutions. But calculus and its derived languages allow us to express this concept far more easily (even if just the English translation of the formulae and expressions, and not the precise notations used by physicists and mathematicians).

How do you distinguish between the case where your language is limiting your thinking vs the case where your thinking is limiting your use of the language?

If an individual can't express a concept, how can you be sure they 'possess' that concept?

(answer might be found in bilinguals. There was an early saint from capadoccia who was grateful some of the more sophisticated greek heresies couldn't even be expressed in his language).

It is a sliding scale, and that's the problem. Without specifying exactly what you mean, it's impossible to say if we agree with your interpretation or not.