第24回:文法と意味2

未分類

前回の記事の続きで、「意味」についての話。ただし、プログラミング上の概念からのフィードバックを重視して考える。

プログラミング言語のルールは、人間のコミュニケーションのルールをなぞって、「機械と人」のやりとりを「人と人」と同じだけ利便化、わかりやすくしようという思想によって取り決められているものだ(その行き着く先が、音声認識だったり、「空気を読む」コンピュータだったり。)

それをあえて、人間同士のコミュニケーションに応用してあてはめることで、人間同士の複雑な関係性の「どこがどうなっているのか」が見えやすくなるかもしれない、という話が前回の要約。

今回は、「文法と意味」の「意味」について深く取り上げる。

文法が合っている、ということが必ずしもコミュニケーションが成立しているということとイコールではない。たとえば、「夏休みの宿題に、原稿用紙で10枚分の日記を書いてこい」と言われたからといって、10枚すべてを使って1日分の日記を書くのは正解ではないだろう。原稿用紙を使っていて、10枚の用紙に、日記を書き込んでいるからといって、それで満点がもらえるわけではない。
相手の意図するところを汲んで始めて正解になるわけだ。

こういったコミュニケーションの枠組みは、様々なところにある。書類のやりとりのみではない。朝のあいさつにも、会議決定にも一定の文法があり、明示的にその枠組の中でコミュニケーションは交わされる。それが、教育によって覚えていく言語の文法であるわけだが、意味的なエラーというものについては、見過ごされ、間違いとなることが多くあるように思う。それは、プログラミングのエラーと同じく、
「文法はチェックされるが、意味はチェックされない」からである。
わけのわからないことを言わない限り、文法(この場合、時と場合、場所、つまりTPOだ)的に合っている発言や書類は、問題なく相手方で処理できる。理解のしようがあるが、その意見するところが正確に伝わっているかどうかは確かではないのだ。「どうせ人間は分かり合えないよね」といった言説は、こういう意味合いでの言説であると僕はとらえている。

では、これをプログラミングの流儀でエラーを修正するには、どうしたらよいか?
答えは、多少逆説的だが、文法を修正することにある。
フォーマットをしっかりと修正し、「夏休みの宿題として、4日につき原稿用紙1枚ぶんの日記を書いてくること」などと、エラーが起きないような修正をしたコミュニケーションをするのだ。省略とローカルルールは常に意味論的エラーの元となるから、コミュニケーションの枠組みの中で適切に扱うこと。わからないことがあれば、わかる範囲まで遡ること。

基本的なことだが、プログラミングに教えられたような気がすることだ。

更新:2012-12-06 慶應義塾大学 環境情報学部 中園 翔