さっきから暇つぶしに読んでる「ことばと思考 (岩波新書)」って本が思った以上に面白いので書いておく。
amazonの商品の説明より
私たちは、ことばを通して世界を見たり、ものごとを考えたりする。では、異なる言語を話す日本人と外国人では、認識や思考のあり方は異なるのだろうか。「前・後・左・右」のない言語の位置表現、ことばの獲得が子どもの思考に与える影響など、興味深い調査・実験の成果をふんだんに紹介しながら、認知心理学の立場から語る。
なんかプログラミング界隈で聞いたことある話じゃない?僕にはこう見えた。
私たちプログラマは、プログラミング言語を通して世界を見たり、アルゴリズムを考えたりする。では、異なるプログラミング言語を話すCOBOLerとLisperでは、認識や思考のあり方は異なるのだろうか。「静的スコープ・再帰・継続・マクロ」のない言語のコード表現、プログラミング言語の習得がプログラマの思考に与える影響など、興味深い調査・実験の成果をふんだんに紹介しながら、認知心理学の立場から語る。
目次
序 章 ことばから見る世界―言語と思考
第一章 言語は世界を切り分ける―その多様性
第二章 言語が異なれば、認識も異なるか
第三章 言語の普遍性を探る
第四章 子どもの思考はどう発達するか―ことばを学ぶなかで
第五章 ことばは認識にどう影響するか
終 章 言語と思考―その関わり方の解明へ
プログラマな人たちは好きなんじゃないかなと思う。プログラミング言語が好きな人たちは特に好きそうな話だ。というのも「言葉は世界を切り分ける」「言語が異なれば、認識も異なるか」など、Rubyのまつもとさんがよく話題に出す「サピア・ウォーフ仮説」の類のお話だから。ちなみに二章に「ウォーフ仮説は正しいか」というセクションがある。
最近話題になったRubyコア用語集にもサピア・ウォーフ仮説のことが載っているな。
普段使ってるプログラミング言語に新しく追加された機能がどうしてもわからない。解説記事を読んでも、本を読んで勉強してもどうもピンとこない。そんな時、別のプログラミング言語を触ってみたらあっけなく理解できた!なんてことはプログラマであれば経験があるんじゃなかろうか。
自分にも経験がある。プログラミングを始めたばかりのころ、C#のdelegateの意味がよくわからなかった。C#の本を読んでもdelegateのところだけワケワカメ状態だった。ちょうどその頃仕事で、それまで未経験だったJavaScriptを書くことになった。入門記事片手にJavaScriptを書いていたら、delegateのことがあっさりわかってしまった。なぜわからなかったのかがわからないくらいあっさりわかった。ついでにクロージャのなんたるかまでわかってしまった。僕は「JavaScriptはなんて素晴らしい言語なんだ!!」と思った。今は「Lispはなんて素晴らしい言語なんだ!!神様ありがとう!」と思っている。Lisp・・・ふははっ!Lisp!
追記
第一章 言語は世界を切り分ける、第四章 子どもの思考はどう発達するか、第五章 ことばは認識にどう影響するか、が特に面白かった。
印象に残っているのは、記憶が言語に引っ張られるって話。例えば、車がぶつかる映像を見せて「車が[衝突]したときのスピードはどのくらいでしたか?」と聞く。この[衝突]の部分の動詞をsmashed, collided, bumped, contacted, hitを言い換えて聞いた時、被験者が答えるスピードが異なるって話。
もうひとつ。子どもが何歳くらいでどういった言葉と概念を獲得するかという話も面白かった。大学の頃に似たような話が講義であったことを思い出した。獲得した言葉によって認識できることや区別できることが広がることを示した実験の話が興味深かった。知らないことを考えることはできないって点で、大人も同じだと思う。ヴィトゲンシュタインってエラい人が「私の言語の限界は、私の世界の限界」だとおっしゃってるそうで。