「アルゴリズム+データ構造=プログラム」? 本当に?

via L'eclat des jours(2005-11-22)

一晩快眠してる間にこんな熱い事態が。(と思ったら13日のエントリだった。ハズカシ。)


一点だけ、

Wirth がアレを書いた当時は、単にインターフェース設計がプログラミングの範疇に入っていなかっただけではないかという気がします。

という別の通りすがりさんの意見に対する反論では、書籍の引用を持って否定しているが、例に挙げたOS設計や言語設計は当時の「プログラム」の中でも特殊事例なのではないだろうか? 記録が残っている古典は往々にして先端の人々によって書かれたものである。その裏で記録に残らない名も無きプログラマが同じ仕事をしていたわけではないことに留意してもらいたい。設計者の定義した入力出力インターフェイスに合わせてアルゴリズムとデータ構造を操るという仕事が当時の大多数のプログラマにとっては一般的だったかも知れない。で、そういう人々を意識すれば、総称としての「プログラム」は「アルゴリズム+データ構造」でしか合意できないわけだ。現在でさえ「プログラマ」と「コーダー」の違いを認識して明確に使い分けている人はごく少数だ(周りにいっぱいいるでしょ、「コーダー」なのに「プログラマ」と名乗っている人)。まぁ、これは推測の域を出ないので当時プログラマだった人の話を待ちたい。


プログラミングに設計が入ってきたのはごく最近だという文章もどっかで見たような気がするんだけどなー。 柳田邦夫じゃないけど名も無きプログラマの語りを集めておかないといけないかもね。


どうでもいい点に突っ込みましたが、本題の「アルゴリズム+データ構造+インターフェイス=プログラム」に賛成です。少なくとも私の仕事では「インターフェイス」をどうするかが半分以上占めているように思います。(中身は大したことないプログラムばっか)