2022年08月04日に初出の投稿

Last modified: 2022-08-04

或るテーマについて議論するときに、必要な背景知識なり予備知識や仮定をどのていど置くかで水準が色々と変わるし、場合によってはそれが議論の是非を決めてしまう原因にもなる。たとえば、いま取り組んでいる逆ポーランド記法について言えば、このテーマを表面的に表れる「書き方」としての問題だと言ってしまうと、FORTH や Factor といった逆ポーランド記法を採用してプログラミング=コーディングする高水準言語の文法という話にもなるし、コンパイラが構文木を生成するときに syntactic analysis (parsing) で処理していくときの様子を記述するための手法という話にもなる。更に言えば、コンパイラというプログラムの動作を記述する話にもかかわるし、その動作によって生成される中間コードの形式という話にもかかわる。更に、逆ポーランド記法を考案したウカシェヴィチのアイデアを議論するなら、それは命題論理の話である。

コンピュータ・サイエンスとしての解説であれば、恐らくウカシェヴィチの事績について細かく知っておいたり議論する必要はないかもしれないが、コンパイラの動作原理や形式言語の記法にかかわる話題としては丁寧に知っておく必要があるかもしれない(もちろん、どこかの国の TIS や富士通やアクセンチュアといった会社で「ものづくりエンジニア」などと言ってる PM や IT アーキテクトとして一生を終えるなら、そういう知識よりも経産省の役人が好きなキャバ嬢や女優の卵の名前でも調べる方が役に立つ)。しかし、だからといって形式言語にかかわる話題だけに限定しても、その理論的な背景知識をどこまで学ぶかについては、やはり教えたりテキストを書く教員の見通しに委ねられるようなところがあるし、その先まで関心をもって自主的に学べるような〈開放系〉の教科書を書く度量があるかどうかは、その著者の見識にもかかっている。

なお、僕は「開放」という言葉の印象だけで短絡的に〈善きこと〉だなどとは言っていない。開かれていることが素晴らしく都会的で洗練されていて、閉じていることが陰湿で糞田舎の百姓みたいなものだというのは、無知無教養なマスコミが描く錯覚や偏見にすぎない。〈閉鎖系〉の教科書には self-contained という絶大な利点があり、何冊も読まずに済ませられる(とりわけ、何冊も買わなくていい)のは、本当にそうかどうかは研究コミュニティにおいて検証され続けなくてはいけないが、素晴らしい特性であり執筆の目標でもあろう。特に、日本の出版事情ではアメリカの大学で使われるような self-contained の巨大で分厚い教科書は難しいらしいので(その割に、この国の出版社には、イリイチや量子社会学などという素人顔負けのバカげた与太話とか東京人の些末な生活を大部の本として出版する予算はあるらしいが)、せめて参考文献や後続する課題とか詳細な論点についての解説などを加えておくことが望ましい。

逆ポーランド記法について言うと、もちろん形式言語やコンパイル(構文解析)といった話題は避けて通れないが、だからといってコンパイルの動作原理を説明するにあたってオートマトンや論理回路の話をどこまですればいいかは、恐らく自明ではないのだろう。そればかりか、オートマトンや論理回路を説明するための基礎として更に必要なグラフ理論やブール代数についてはどうだろうか。

  1. もっと新しいノート <<
  2. >> もっと古いノート

冒頭に戻る


※ 以下の SNS 共有ボタンは JavaScript を使っておらず、ボタンを押すまでは SNS サイトと全く通信しません。

Twitter Facebook