この項目はプログラミング言語について記述しています。声優ユニットについては『LISP(声優ユニット)』を参照してください。
LISPとは、プログラミング言語である。
名前はLISt Processingの省略である。
プログラミング言語としては2番目に古く、また初の関数型プログラミング言語である。ガベージコレクションやファーストクラスの関数、レキシカルクロージャなどをいち早く導入していった言語であるため、現存するほとんどのプログラミング言語に影響を与えている。
1958年、当時MITにいたジョン・マッカーシーによって発明された。
非常に単純なため、純粋なLISPの実装はほぼすべてのプログラミング言語で実装可能と言われている。
リストの書き方は、例えば先頭要素「動画」、第二要素「コミュニティ」、第三要素「大百科」ならば、
(動画 コミュニティ 大百科)
と書けばよい(命令の記述の引数として用いる場合は先頭に命令ではないことを示すためシングルクオーテーションが必要)。
他、LISPに必須な命令は以下である。
(car '(動画 コミュニティ 大百科)) (cdr '(動画 コミュニティ 大百科))(コミュニティ 大百科)というリストが出力される。 (cons ニコニコ '(動画 コミュニティ 大百科))(ニコニコ 動画 コミュニティ 大百科)というリストが出力される。これだけでは実用にならないので一般には様々な命令を追加した方言が使われている。方言については下記の項を参照のこと。
LISPに必要な要素は少ないので、実用的に使うために拡張したり、分野ごとに特殊化したりと、様々な方言がある。別にLISPer同士の仲が悪いわけではない。Lisp-1とLisp-2で論争が起きたり、Common LisperがSchemerをdisっていたり、Schemerがfuncallや#'をゴミ箱に投げ捨てようとしていたり、R6RS Schemeの策定でScheme界で大揉めしたりしても、決して仲が悪いわけではない。
文句なしに、世界で最も「何でLISPなのよ…」と思われている使われているLISP。
世界で最も人気のあるテキストエディタのひとつであるEmacsで使われている方言で、この方言の処理系が搭載されていることで、Emacsは非常に優れた拡張性を持つ。
1975年に考案された。言語機能のコンパクトさを重視している。黒板での動作に定評がある。
などで多くの後続の言語に影響を与えた。
現行規格R6RSの策定の際、Sussmanにキレられたり、主要処理系開発者に軒並み反対されたり、対抗規格のERR5RSを立ち上げられたり、あわや暗黒時代の到来か、という黒歴史を演出した。
1980年代から策定が始まり、1994年に正式な規格が制定された。実用性重視で仕様が使ってる人間でも覚えられない程大きい。C++と仕様の巨大さ、複雑さで戦える選ばれた戦士のひとり。
Schemeと対照的に、それ以前のLISPからの影響が強く、関数の名前などは、多くを従来のものから受け継いでいる。また、産業界からの影響も大きく、コンパイラの最適化の制御、ステップ実行、ブレークポイントなどといった、実用的な機能が仕様で定義されている。
2007年に登場したコーヒーの国からの新たな刺客。設計者は金持ちニートRich Hickey。Java仮想マシン上で動作する。
Javaとの連携の容易さと、ソフトウェアトランザクショナルメモリによる並行コンピューティングが特徴。データ構造がイミュータブルであり、副作用を避ける関数型寄りの設計。また、パターンマッチングなどの要素も柔軟に取り込んでいる。
2001年に開発が始まり、2008年に最初のリリースをされた。こちらは本当の金持ちが作った。
構文木の要素を最小限にするというコンセプトに基づいて、大胆な変更がされている。文法の導入をあまり好まないLISPコミュニティの中にあって、前述のコンセプトに当てはまれば、新しい文法も柔軟に取り入れる方針。
ニコスクリプトを用いてLISP処理系(注:非常に重い)およびその解説。
作者は「魔法言語 リリカル☆Lisp」の開発者でもある。
また、Shibuya.lisp(渋谷を中心としたLispコミュニティ)で定期的に開催されているテクニカルトークの様子をニコニコ動画で見ることができる。
急上昇ワード改
最終更新:2026/01/10(土) 08:00
最終更新:2026/01/10(土) 07:00
ウォッチリストに追加しました!
すでにウォッチリストに
入っています。
追加に失敗しました。
ほめた!
ほめるを取消しました。
ほめるに失敗しました。
ほめるの取消しに失敗しました。