秋学期は言語を勉強したい。

こう言うと、普段しこしこマイコンやプログラムばかりいじってるので、萩野先生とかコンパイラの授業とかを勧められるんだけど、そうではない。

SF経由で言語学の事を知ったり(あなたの人生の物語、星のバベル、など)、ちょっと海外に言ったり、まああと色々なプログラム言語をいじったりしていて気づいているんだけど、記号とその配列の話って面白い。

架空言語を作りたくなる。名詞の定義と文法から作ったりする授業とかないの?SFCには?

この世の中の物や事に名前をつける。名詞に動詞や形容詞を加えて、配列すると、実際にある物やおこっている事を指し示すようになる。あるいは描写する。

これと同じ事が、ものを作っている時にも多分頭の中で行われている。

例えば最初期のプログラム言語の場合、一本の映画のテープのようなものを想像できる。テープの升目を読み取るレンズが、一度に一マスずつ読み取って行く。マス目に書かれているのは「1」「80」などの数字か、「3に飛べ」「10進め」などのレンズ自体の移動だ。さらにレンズにはテープのマス目自体を書き換える機能もあるので、半永久的に動作する。なんかこんなのが万能チューリングマシンだっけ?

次のプログラム言語は、「3に飛べ」とか呼んでたマス目の名前を「sizeOfWindowに飛べ」とか具体的な名前を付けられる様になってきた。こうなってくると、もうちょっと改良すると client.sendMessage( serverA );とかオブジェクト指向で書けるようになってくる。主語.動詞(目的語)だ。

なんかよくわかんなくなったからいいや。わかんないけど言語っていうより記号論の方に興味があるのかな?

いろんな外国語の文法とかを比較してくれる授業とかあったら嬉しい。

最近すごいなと思ったのは、ProcessingがほとんどのクラスがPImage(Bitmap)を継承してるお陰でカメラもbitmap、ステージもbitmap、読み込んだビデオもbitmapとして扱えたり、実は言語を勉強していく過程でカメラ制御と画像処理の手順や”作法”を勉強できるように仕組まれていたり、大胆にthreadやイベント登録まわりの機能を削って単純化したお陰でとっつきやすくなっていたりする所が凄いなあと思う。

あるいは、ArduinoがPORTの概念を完全に無しにして全部連番のPINにしたり、思い切って完全にTimerを使え無くした代わりに、モータ制御や通信系の色々なコマンドが利用できるようになっていたりというデザインが凄い。

関数指向とかラムダ式とか式木とかいまいちよくわからないけど、こういう↑あからさまな「肉を切らせて骨を断つ」的な言語処理系の設計は、面白い。