LISP

出典: 謎の百科事典もどき『エンペディア(Enpedia)』
ナビゲーションに移動 検索に移動

LISP(LISt Processor、リスプ)とは、プログラミング言語の一つ。

概要[編集]

代表的な関数型言語の一つであり、現在でも使われているプログラミング言語の中では、最も古いものの一つである[1]。ただし、当然ながら現在使われているものは当時からは大きく変化している。また、LISPと言った場合に指すのは具体的な一実装ではなく、多数の方言の集合を指すことが多い。
具体的な方言は、jawp:LISPを参照。Schemeという方言は、LISPとはまた別の一系統を成している。

第一次AI(人工知能)ブームの時にAIプログラミング言語として使われたことから、LISPは人工知能で使われるプログラミング言語と認知されていることが多い。

基本的に[2]、LISPは要素のリストを丸括弧で囲んだS式(symbolic expression)と呼ばれる式で全てを表現する。評価式とデータはどちらもS式で表す。コードはS式とその入れ子で構成されるので、見た目は非常に特徴的なコードになる。
また、データ構造は基本的に連結リストであり、S式は連結リストを記述しているものと言える。ただし、実装レベルで全て連結リストになっているとは限らない[3]

脚注[編集]

  1. 厳密には、FORTRANに次いで2番目に古い。
  2. Clojureではある種の式に鉤カッコを使う。
  3. 裏を取ったわけではないが、最適化により配列に置き換えるようなことは十分にあり得る。