良い言語は普及しないの法則

あたしは Common Lisp を使えない愚民なので(xyzzy lispelisp 以外を書いた事なんてほとんど無い)、そのもの自体へのコメントはもちろんできないのだけれど。"Lisp" を "Smalltalk" に置き換えれば、なんかデジャブのようなモノを感じます。「Smalltalk を知らずんばOOP を語る資格なし」みたいなこと言ってるなぁ、あたし・・・(^^;


* * *


今回の「Common Lisp を全て知らずんば Lisp 語るべからず」な文章を読んで最初に思い出したのが、コレ。

http://tiki.is.os-omicron.org/tiki.cgi?c=v&p=Squeak%2F%A5%BD%A1%BC%A5%B9%B4%C9%CD%FD

Smalltalk には CVSSubversion のような バージョン管理システムは無いの? から始まって、

Smalltalk が存在し得たこと自体の意味を、知ろうともしない人(つまり自分にはすでに Smalltalk を評価するに十分な知識があると勘違いしている人)こそ、それを軽視したり(ただ古いと)馬鹿にする発言をしがちである傾向があり、それがいっぱしの識者の意見として世の中にまかり通っているのは残念なことです。

とまんまな発言が (^^;

KURODA さんの発言に あたしは同意も感情移入も出来無いのだけれど、上記の Smalltalker の発言は「言い方はとてもまずい」と思いつつも、Smalltalk 選民側に感情移入してしまう。多分、この議論がリアルタイムに展開されている場に巡り合わせていたら、猫も選民2号として、大いに選民思想を振りまき、戦線を泥沼化させていたと思われます。(居合わせ無くってホントによかった)

OOP という分野に限定されますが)Smalltalk や Eiffel は Lisp 同様「アイデア劣化コピー*1をされる側の言語なので「気持ちは」解るような気がします。「良いとこ取り」なんて言われると、オノレらが持って行かなかったモノに本当の良さがあるのが解らないのか!このバカチンが!! という気持ちが沸々と沸いてしまいます(笑)

その煮えたぎる信仰心をぶちまけてしまったが最後、待っているのはお祭りで、失いこそすれ何も得るモノはないのですけど、ワカッチャイルケドヤメラレナイ。

ああ、人のふりみて我がふり直せればいいなぁ。

普及によく効く 一さじの醜さ

プログラム言語への愛は信仰へ昇華(あるいは膠着してしまう)しやすいのかなぁ。「真理を得た」と思った瞬間 盲目になるのかもしれない。

真理であれば、「大多数がたどり着けなくて当然」という感覚で自然です。自分は真理を知っているので愚民どもの意見に耳を貸す必要もないし、それらの意見が私のと異なるのも、彼らが真理を知らないからなのです。という思考形態そのものが「選民的」であり「宗教的」です。

LispSmalltalk のような シンプルなルールで全てを実現してしまうような「真理」っぽい言語は、宗教化しやすいのかもしれません。「真理到達感満足度」の高い言語は、選民的コミュニティがネックになって普及しない ――の法則とかできるかも。

シンプルで良い言語(最強の言語)を設計しても、信者を発生させ 排他的コミュニティで周囲をくるんでしまうため、普及しにくいのかもしれません。逆にC++ とか Perl のような ちょっと濁った言語(失礼)の方が、ユーザフレンドリなコミュニティを誘発し、どんどん広まっていくのかもしれません。

ならば、普及する言語を設計するには、よく練られた良い文法をベースに、醜さ(不純さ)を一さじ盛り込むのがコツなのかも(笑)



(単なる言葉遊びなので本気にしないように)

*1:これぞ 選民的発言^^;