2017年のCommon Lispの処理系はこれだ!

  • 41
    いいね
  • 4
    コメント

SBCL (これがおすすめだ!)

2017年もSBCLが充実の一年ではないでしょうか(2015年から変化なし)
大体月に一度リリースしていますが、途切れることもなく安定しています。
以前(2010年)Quicklispでアンケートを取りましたが、Quicklisp利用者の8割以上はSBCL利用者のようです。
2016年も大勢に変化はないように思いますが、以前よりSBCL以外の処理系の開発の勢いが弱くなっているようなところもあるので、さらにシェアを伸ばしているかもしれません。

その他の処理系

CLISP (Lisp入門者にはこれがお勧め)

この6年位開発が停滞していて、Quicklispのライブラリが素直に導入できなくなりつつありますが、初心者にも優しい対話機能でCommon Lispのコアな部分の学習や初学者にはお勧めでしょう。
もの足りなかったり、Quicklispのライブラリが動かなかったりしたらSBCLかCCLへ乗り換えましょう。

Clozure CL(CCL)

ネイティブコンパイラで速度も高速です。コンパイル速度はSBCLよりずっと速いのが特長。

Allegro CL

ネイティブコンパイラで速度も高速。周辺ライブラリや処理系の機能は充実しています。
ウェブサイト等ではお値段がぱっと分からないのが難点。恐らく日曜プログラマが使うのには安くはないでしょう。
高嶺の花な処理系の為、『やっぱACLじゃないとなあ』『ACLじゃないと話にならない』等の嘘か本当か分からない噂話を耳にしますが、日曜プログラマが必要な大抵のことはSBCLでもできます。
もちろん商用サポートが必要な場合、Allegro CLが適切でしょうが、そんな人がここを読んで処理系を決めるとは思えません。
Express Editionとして32ビット版が無料で試せます。ヒープ制限があるので大きいプログラムの場合は動かせない可能性もありますが、大体の使い勝手は体験できるかと思います。

LispWorks

ネイティブコンパイラで速度も高速。周辺ライブラリや処理系の機能は充実しています。
2015年5月発売のLispWorks 7.0よりHobbiestプランができ、64ビット版も\$750とお求めやすくなりました。32ビット版は\$500です。

円高の時にでも買ってみましょう。

Personal Editionとして現時点では6.1.1の32ビット版が無料で試せます。
連続使用5時間という制限時間と、ヒープ制限があり、動かすものによっては厳しいですが、大体の使い勝手は把握できます。

ECL

KCLから連綿と続くCへ変換して実行する処理系。

開発者が引退したため今後どうなるかと思いましたが、引き継ぐ人が現れ活動が再開しています。

CMUCL

開発は続いていて、SBCLと機能の取り込み合いをしていたりしますが、依然として32ビットプラットフォームです。

GCL (おすすめしない!)

ECLと同じくKCLから続くCへ変換して実行する処理系ですが、KCLからの流れとしては、こちらが本家です。
最近開発が活発になっていますが、如何せん仕様が古くANSI CL準拠ではありません。
ANSI CL準拠機能はありますが、まだまだです。
Quicklisp、ASDF等、近頃重要なツールは大体動きません。
主にmaximaや、acl2等のGCLの上に実現されているアプリの為に開発が活発なようです。

ABCL

jvm上のCommon Lisp実装。Clojureの話題になるとCommon LispにもABCLがあるが…と話題にのぼることが多い処理系です。
Javaのコードが呼び出せたりもします。
またここ数年でANSI CLへの準拠度も高くなり、MOPのサポートも向上してきています。

Clasp(まだまだこれからだ!)

C++との連携、LLVMの利用、等で注目される処理系です。
今の所、まだまだ成熟してはいない処理系で導入の難易度も高いです

コメント

2017年版へと改訂: あまり変化がない
2016年版へと改訂:
2015年の内容とほぼ一緒ですが、Claspを追加してみました。