Lispは、世の中に数あるプログラミング言語の中でも、COBOLやFORTRANと同時代からあり、最も古い部類に入ります。
Lispが考案されたのは1958年。アメリカの計算機科学者で認知科学者のジョン・マッカーシーによって開発されました。その着想は、2年前の「Dartmouth summer research project on artificial intelligence」(人工知能についてのダートマス夏季研究プロジェクト)にさかのぼります。Lispは当初、数学理論のラムダ計算に用いる言語として使われていました。その後、Lispの名が急速に高まったのは、「人工知能(AI)」の分野で盛んに使われるようになったからです。
Lispの開発者であるジョン・マッカーシーは、「人工知能; Artificial Intelligence」という言葉の提唱者でもあります。Lispはその数学理論を背景とした表現力と柔軟性が好まれ、彼の教え子や同僚たちは、LispでAI のプログラムを作成したため、80年代のAIブームの中でLispは急速に普及していきました。ただ、90年代になると下火になってしまいます。
Lispは特徴的な言語
Lispは関数型言語で、C言語などの他の多くの言語とは違う特徴を多く持ちます。たとえば、括弧を多用する独特の構文を持っていること。また、リスト処理を意味する英語「list processing」がその名前の由来であるように、リスト処理が比較的楽にできることも特徴です。
Lispは、実装のしやすさからCommon Lisp 、Emacs Lisp、InterLisp、SchemeなどLispの方言(Lispの一種)が生まれました。GoogleやYouTubeをはじめとしたWeb2.0的なサービスのほとんどで用いられるPythonも、その共通点の多さからLispの方言とみなす人もいるほどです。
ただ、Lispの実行には大量のメモリ空間を必要とすることが欠点で、そのため速度が遅いという指摘もあります。こうした欠点をカバーするために、ジョン・マッカーシーは「ガベージコレクション」(プログラムが確保したメモリ領域のうち、不要になった領域については自動的に解放する機能)を考案しました。
また、独特の記法から、現在主流になっているC言語系のプログラマーの中には拒否反応を示す人もいるようです。そうした点から、現在は実プロジェクト上で用いられることは少なくなっているといわれています。
Lispの思想と現在の言語に通じるもの
ただ、Lispは、クラシカルな言語ですが、古いからといって使えないというわけではありません。海外で大流行しているプログラミング言語のPython とも多くの共通点が見られるように、Lispの思想やプログラミングなどには、現在のプログラミング言語を理解し、使いこなす上で参考になる点が多くあるのです。
人間の思考に似せたロボットの開発が盛り上がってきている昨今、人工知能の開発に適した言語として、再度Lispが注目される可能性もあります。