diary/Kojima

・夏休みの宿題

というわけではないけれど,去年まで某所でやっていた OSS概論の講義資料をHTML化 してみたので,興味ある人はご笑覧ください.一応,OSS概論の中の総論編といった感じで, 全15回ほどの講義の最初の4回分くらいかな. 残りはXウィンドウやネットワーク,各種言語の話題とかを取りあげた各論編なんだけど, こっちはいつごろ手がつけられるかも分からない(苦笑

講義の雰囲気を出してみようかと話し言葉で書いてみたのだけど,文字として 読むとかなり冗長な感じなので,文書として残すならもう少し整理した方がい い気もするのだけど,とりあえず暫定版ということで.


・Worse is better

上記の資料をまとめる際に「伽藍とバザール」を読み直したりしたんだけど, そこで触れられていたLISPの歴史と現状に触れた論文 で取りあげられていた話題.

LISP言語はMIT/Stanford的なデザインになっていて,「単純さ(Simplicity)」 「正しさ(Correctness)」「一貫性(Consistency)」「完全性(Completeness)」 を大事にしている.この4つを大事にするのはUNIXとCの世界でも同じだけど, その考え方は微妙に違っている.

例えば「単純さ」については

LISP:デザインは実装とインターフェイスの双方で単純(シンプル)でなければな
らない.ただし,インターフェイスがシンプルであることの方が実装がシンプルで
あることよりも重要.
UNIX:デザインは実装とインターフェイスの双方で単純(シンプル)でなければな
らない.ただし,実装がシンプルであることの方がインターフェイスがシンプ
ルであることよりも重要.単純さはデザインの際に最も考慮すべきこと.

「正しさ」については

LISP: デザインはあらゆる観点から見て正しくなければならない.正しくない
ことは決っして許されない
UNIX: デザインはあらゆる観点から見て正しくなければならない.ただし,正
しさよりも単純さが優先される

という風に,MIT/Stanford的な哲学は実装よりもやや理論(理想)に重きを置い てきたのに対し,UNIX/Cの哲学(著者はベル研の所在地からNew Jersey approachと呼んでいる)は実装が単純であることをより優先して,その結果とし て "Worse is better" とでも言うべき状況になっている,という議論をしてい るあたりが面白かった.

「KISSの原理(KISS principle)」というのはLinuxの世界でもよく聞くのだけど, Simpleというのも奥が深いのだなぁ,,という印象.そー言えば,Windows が 世界を制覇したのも Worse is better の延長という気がしないでもない.



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-12-17 (金) 16:35:41