- Lispは技術的には優れているが、主流にはなれなかった**「優れた失敗作」**である。
- 著者はその理由を、言語そのものよりもLispに惹かれた人々の気質に見いだしている。
- 彼らは卓越した知性と独創性を備えているが、退屈な仕上げ・協業・妥協・継続性に耐えられない傾向がある。
- Lispは彼らの創造性を増幅したが、同時にその弱点まで生態系全体に拡大してしまった。
優れた失敗者はどのように作られるのか
- 長年教えてきた講師にとって特に記憶に残る学生は、とても優秀だった学生か、とてもひどかった学生だ。
- ところが、ある種の学生はその二つの範疇に同時に属する。
- 彼らはたいてい高校までは:
- 少ない努力で最高の成績を取り、
- 最後の瞬間に始めてもやり遂げ、
- 学校の規則や形式を軽く見る。
- 実際、多くの規則は形式的なものなので、彼らの冷笑にもまったく根拠がないわけではない。
- 問題は、安易な成功に慣れてしまい、粘り強さや仕上げを学べない点にある。
没頭と無気力の反復
- 興味が湧くと、短時間のあいだ驚くほど深く没頭する。
- しかしすぐに飽きて、仕事を終える前に投げ出してしまう。
- 熱狂的な活動のあとには、無気力と撤退が続く。
- 著者はこの傾向を**BBM(brilliant bipolar mind)**と呼ぶ。
- ここでの「双極性」は厳密な診断名というより、高揚と停滞が繰り返される傾向を指す比喩に近い。
大学で崩れる理由
- 大学は自由とより高い難度を同時に与える。
- 高校時代のように才能だけで持ちこたえられると信じているが、ある時点からは着実な努力なしに成果を維持することはできない。
- 成績は落ち、自分でも失敗感を覚えながら、習慣を変えられない。
- 正規の学業の代わりに、興味深い脇道へそれることもある。
- ただし、自分のテーマでプロジェクトを行う自由が与えられると、突然生き生きとして独創的な成果物を出すこともある。
- 問題は、普段の成績や評判のせいで、その独創性が正当に評価されないかもしれない点にある。
Lispがこうした人を引きつける理由
- Lispは個人の知的能力を大きく増幅する道具だ。
- 一人の人間が、他の言語では扱いにくい規模のアイデアを素早く実装できるようにしてくれる。
- そのため、大きなビジョンを持つ人、既存のやり方の不条理を嫌う人、一人でも多くのものを作りたい人を強く引きつける。
- Lispコミュニティがガベージコレクション、リスト処理、パーソナルコンピューティング、ウィンドウイングのような分野で先駆的だったのも、こうした気質と関係がある。
Lispコミュニティの弱点
- Lispはアイデアをあまりにも簡単に実装できるようにしてしまう。
- その結果、次のような態度が生まれやすい。
- 「自分の環境では動く。」
- 「自分は理解しているのだから十分だ。」
- 「文書化と整理はあとで考えればいい。」
- 実際、Lispエコシステムには似たようなツールが多くあったが、
- ドキュメントが不足し、
- バグが多く、
- メンテナンスが途切れている場合がよくあった。
- それぞれが自分なりの解決策を作ったが、共通の安定した基盤へ発展させることには弱かった。
C/C++陣営との対比
- C/C++では大きなシステムを一人で作るのが難しい。
- そのため自然に:
- 逆説的に、言語の不便さが組織的な協力を促進する。
- 雇用主の立場では、不安定な天才一人よりも、意思疎通ができて引き継ぎも可能な平凡な開発者が何人かいるほうが安全だ。
理想主義と現実の衝突
- BBMは制度や市場の虚偽、不合理、妥協を素早く見抜く。
- 問題は、それに耐えたり活用したりする準備ができていないことだ。
- Lispマシンは技術的に「正しいもの」を作ろうとしたが、市場とプラットフォームの現実を無視した。
- その結果、技術的純粋さが生態系の孤立につながった。
- 著者はこれをLisp失敗の核心的な事例だと見ている。
抑うつと自己否定
- Lispコミュニティには、強い自負と強い悲観が同時に存在する。
- Lispがどれほど優れているかを確信しながらも、現実には結局もっと単純で劣った技術が勝つだろうと絶望する。
- Richard Gabrielの「Lisp: Good News, Bad News, How to Win Big」と“Worse is Better”は、この両面性をよく示している。
- 問題は解決可能であっても、停滞期に入ると、すべてが終わったかのように見えてしまう。
結論
- Lispの問題はLisp自体というより、Lispを取り巻く考え方と文化にある。
- 卓越したビジョンと独創性だけでは成功できない。
- それを現実の成果へ変えるには、次のものが必要だ。
- 結局Lispは、欠陥のせいで失敗した言語というより、優れた人々が自分たちの強みを持続可能な形に組織化できなかった事例である。
- だから著者の最後の答えは逆説的だ。Lispには何の問題もない。問題は、人々がそれで何を作り出すかにある。
まだコメントはありません。