河野真治 @ 琉球大学情報工学です。

In article <413BD59D.6976D661@ht.sakura.ne.jp>, IIJIMA Hiromitsu <delmonta@ht.sakura.ne.jp> writes
> 同意。論理学は記号論理をしっかり理解している必要は全くないけど(高校数学
> レベルで十分)、英語が読めないと、どの言語でもやっていけません。オープン
> ソースの世界に入ろうとしたら当然のことだけど、たとえ Windows だけいじって
> いても英語は必要ですんで。

プログラム言語の構文って、ある程度までは、それほど、しっかり
知らなくてもなんとかなります。
   if ほげほげ then ほげほげ  else ほげ
   while (ほげ) do ほげ
とかさ。でも、実は、そのなんとかなるってのは、英語のセンスに
よるって言うところがあるんだよね。変数の名前の付け方とかも、
あるいは、人のプログラムを読む時にも、英語の考え方みたいなのが
入っている。instance とか class とかでも、a dog とかいう英語
の持つ構造が影響を与えていると思います。

日本語の変数が使えるとかローマ字書く変数や関数名が主っていう
のはほとんどないから、英語の名前のセンスってのも要求されるし。

で、英語で話すとはどういうことなのか、を追求したのが記号論理
なんだよね。

   GetValue(Result(3))とかToPrimitive(Result(2))

とかでも、述語論理のスコレーム関数とかに対応するものだったりするし。
∃なんとか、ほげほげとかいう代りに、関数を使うわけだね。

まぁ、論理と言われるとびびる人もいるのかも知れないけど、プロ
グラムを学ぶことと、論理学を学ぶことは、ほとんど並行してます。
そこで、ぴったりした概念とか名前が用意されているわけだから、
使った方が得だと思う。

なんだけど、中学/高校、あるいは、大学初年度でも重視されてない
分野でもあるんだよな。

---
Shinji KONO @ Information Engineering, University of the Ryukyus
河野真治 @ 琉球大学工学部情報工学科