Sapir-Whorf Hypothesis

I said earlier that to really make effective use of object-oriented techniques requires you to view the world in a new way. There are some curious parallels between the artificial languages we use in writing computer programs, and the natural languages people use in their everyday life. Let us explore one of these parallels.

In linguistics there is a hypthesis that the language in which an idea or thought is expressed colors the nature of the thought. This notion was developed in the early part of this century by two American linguists, Edward Sapir and Benjamin Lee Whorf.

The example that is often cited is the supposed fact that Eskimo or Innuit languages have many different words for snow. Thus, when an Innuit looks out on a vast plain of white, they must make a much more detailed differentiation than must I, since to even say the simplest thing they need to determine whether the snow is wet, or powdery, or the right kind for making igloos, or whatever. I, on the other hand, can simply dismiss it as ``snow''.

A similar argument can be made concerning the plethora of words found in arabic languages to describe camels.

Now there is an obvious conclusion one can make, and a much more controversial one. The obvious conclusion is that languages (both natural and computer) can lead you in one direction or another, but don't preclude you from thinking any thought. Certainly an Innuit eye is no different from mine, and if I studied it long enough and felt it important enough, I could make the same distinctions as the Innuit, even if I was speaking only English.

Sapir and Whorf went further, and claimed that there were thoughts one could have in one language that could not ever occur, could not even be explained, to somebody thinking in a different language. This stronger form is what is known as the Sapir-Whoft hypothesis, and remains controversial. It is interesting to examine both of these forms in the area of artificial computer languages.

[audio] [real] Text to accompany slide05, in Chapter 1 of An Introduction to Object-Oriented Programming