Lispは良き友人、教師
高校時代の私は学校で教わる勉強というものに全く興味が湧きませんでした。それどころが苦痛でした。例えば数学ですと公式を覚え類題をたくさん解き、短時間で正確に答えをだすというような訓練ばかりさせられていました。これは私には苦痛でした。早々とドロップアウトして創造的なロックミュージックに夢中でした。
しかし、Lispと出会うことによって劇的に変わりました。実は学校で教わる授業、学問として捉えるとこれがとても面白いのです。これを契機として独学し、さらに後年、大学理学部数学科に入れてもらって本格的に勉強をしました。そんな経験を通してLispが学校での勉強の役に立つのではないか?Lispを副教材としたら勉強は楽しいものになるはずだ、という信念を持つようになりました。2016年からISLisp処理系の実装に没頭しておりました。そんな経験も交えてLispと教育学習分野について極私的な意見を述べてみたいと思います。
ウインストンの本より
昭和59年に買ったウインストンのLISP本には数学を題材にした例題が多く含まれていました。ニュートン法による平方根計算、電気回路のインピーダンス計算、代数方程式の根を求める、二値画像に関連して疎行列についても書かれていました。
SICPの影響
複素数をリスト構造を利用して実装、複素数計算をSchemeで書いていくという題材が印象に残っています。このことが複素数に親しみを感じさせてくれました。後年、数学科で学んだ科目に複素関数論がありました。SICPの題材をより深く理解したかったのでした。
Lispの栄枯盛衰
1958年にマッカーシー博士がLispを考案し、その後の古典的な人工知能研究はLispが使われました。人工知能の問題はアルゴリズムも判明していない定式化されていない題材です。人間の知性の仕組みについて仮説をたて検証、試行錯誤しつつ補正、追加を加えていくスタイルであったと思います。こういう分野においてLispは無類の強みを発揮します。リスト構造が柔軟であることに加え、プログラムの修正追加が容易なことが研究者に好まれたのだろうと思います。1980年代は日本の第五世代コンピューター計画の影響もあり、Lisp対Prologのような感じでそれぞれ発展を遂げました。しかし、日本の第五計画の終了とともにこうした古典的人工知能の分野は冬の時代を迎えます。
そんな冬の時代を迎えたLispでしたが、インターネット黎明期において再度ブレークします。ポール・グレアムさん率いるベンチャー企業がLispでWEBアプリケーションを開発したことにより大きな経済的成功を収めたことがきかっけでした。私が思うにLispの柔軟さが寄与したのだろうと思います。インターネット黎明期においてはその技術開発は混とんとしていたのだろうと思います。こうしたきちんと定式化されていない分野ではLispはその強さを発揮します。ライバル企業にLispを使って開発していることは極秘とされていました。Lispが競争力の源泉だったからです。
その後、Rubyなどが出現しWEB分野のライブラリも整備されるに至ってLispはその初期の役割を終えたように思います。現在でもClojureがWEB分野で利用されていますが、全体としてのシェアは僅かです。WEB分野は定式化されライブラリ化されその部分品を組み合わせることで容易にアプリケーションができるようになりました。Lispの役割はひとまず終わったといえるかもしれません。
学習、教育分野へ
さて、ここからが本題です。高校で教わる科目、学問は既に答えが見つかってるものばかりです。例えば高校程度の初等数学はもう解法パターンがわかっています。ですから、その解法、公式を暗記し、大量の類題をこなして短時間で正確に答えを出すことが受験で求められます。私がこれが苦痛で仕方がなかったのです。もしも、私の高校時代にLispが使えたなら、幾晩も徹夜をして計算実験をしていたことでしょう。そして理論に興味を持ち、徹底した証明を得たいという気持ちになっただろうと思います。こうしたことが深い理解につながり大きな知的な喜びを得たことでしょう。残念ながら私がその喜びを得たのは大学を卒業する間際になってからでした。
未知なるものへの挑戦
現在の日本は経済問題をはじめとしていろいろと問題を抱えています。それらは従来の手法、理論が通用しなくなってきています。科学技術分野においてもアメリカのやっていることを模倣すればいいという時代は終わったように思います。独自に研究開発をしていかなければ日本はどんどんと先進国から置いて行かれるような危惧を感じます。私が思うに今の政治、経済、技術の中枢部にいる人たちは独自にオリジナルに考えるという経験、能力に乏しいこともその停滞の一因ではないかと思っています。今後ますます答えのない問題に立ち向かわなければならないことが多いでしょう。受験勉強のように手法を記憶しておいて素早くそれを応用するだけでは通用しない世界に突入していると感じています。
そこでLispです。
学生にはいきなり答えを与えるのではなく、時間がかかってもいいので徹底的に試行錯誤、独自に考察させるという訓練が必要だと私は思います。日本人がアメリカ人に比べて劣っているのはその能力だと思います。それは遺伝的な問題ではなく、教育の手法によるところが大きいと思います。もはや明治維新ではないのです。わき目も降らずに英米の模倣をする時代はとっくに終わっています。
そんなわけで私のこの信念に基づいてISLisp規格準拠のEasy-ISLispというものを開発しています。2016年に着手していますのでかれこれ6年くらいです。インタプリタ・コンパイラは完成、協力者さんの力も得て安定性、ロバストネスも強化されました。教育学習目的のライブラリも整備しました。これを知的なおもちゃとして高校生の皆さんに使ってもらうことを願っております。この願いは少しづつではありますが着実に実を結んでいるように感じています。