もうひとつだけ最適化のことを考えてみよう。
gcc 最適化という項があった。
gcc とはいったい何か。それは GNU Compiler Collection であるという。
Compiler=コンパイラーは、書き上げたプログラムを機械が読みとってくれるように翻訳するプログラムで、Collection=コレクションはプログラムを集めたものかなあと想像ですませることもできるが、GNU と、またもや略号のお出ましに会っては当惑するしかない。
GNU とは何だろう。「グヌー」または「グニュー」と読むこれが GNU is Not Unix! 「GNU は UNIX ではないぞ」という意味をもたせた名前だというからややこしい。
略号で表した名前の中に、同じ文字の略号の意味を含ませたのを、再帰的命名というそうである。
画像形式の PNG は PNG is Not GIF. クレジット会社の VISA は Visa International Service Association. と同じかたちで命名されている。
gcc は「あらゆるソフトウェアは自由に利用できるべき」という FSF の理念を体現した開発プロジェクトの総称という説明には、また略号が出てくる。
行き掛かり上 FSF を見過ごすのは忌々しいから調べてみると、これは Free Software Foundation で、Richard Stallman 氏がフリーソフトウェアの普及を目的として創設した非営利の民間団体だった。
寄り道、回り道で話の芯にたどり着かないが、検索途中で「gccの最適化オプションで挙動がおかしくなる」という見出しを目にした。
最適化には注文のつけ方があるらしい。下手な注文を出すと、注文条件には適合してもプログラムの挙動は最適でなくなるのか。
むずかしいことはわからないが、最小の動作量で仕事をするのが、最適化されたコンピューター・プログラムであるとしてみると、ユーザーの思考量も最小をめざすこと、それもプログラム最適化の要素ではないかと思えてきた。
ワードのメニューを、全部ひとまとめにしたらどうなるかという実験をした人がいる。
結果はご覧のとおりで、トランプを2~3組かき混ぜた神経衰弱のようである。
Windows も Office も、バージョンが変わるたびにだんだんこれに近づいていくような気がする。
ユーザーの頭をそれに合わせて最適化していくことは、一種の芸になってしまうのではないか。
パソコンという言葉も、情報処理用具の名称としては最適でなくなっていくようである。