argius note

プログラミング関連

Armed Bear Common Lisp (ABCL)

以前、Clojure - JavaVM上で動作するLisp - argius noteというのを見つけましたが、Clojureは割と「訛りの強い」Lispだと思いました。
今回の Armed Bear Common Lisp (ABCL) は、CommonLisp用のテストスイートを使ってテストしているようです。100%合格ではないようですが、CommonLisp準拠といえそうです。
ソースで配布されているので、自分でビルドします。ビルドにはCommonLispの処理系とJDKが必要。READMEのINSTALLATIONに書いてますが、"customizations.lisp"の*jdk*を自PCのJDKのパスに書き換えて、Lispのinteractionに入って load→build をそれぞれ実行します。こちらでは、10分くらいで完了しました。

実行はこんな感じになりました。(コードは、そらではもう書けないので、Clojureの時のを流用。)

$ java -jar abcl.jar
Armed Bear Common Lisp 0.0.10
Java 1.6.0_07 Sun Microsystems Inc.
Java HotSpot(TM) Client VM
Low-level initialization completed in 0.672 seconds.
Startup completed in 4.066 seconds.
Type ":help" for a list of available commands.
CL-USER(1): (defun square (x) (* x x))
SQUARE
CL-USER(2): (defun quadruplicate (x) (square (square x)))
QUADRUPLICATE
CL-USER(3): (quadruplicate 3)
81
CL-USER(4): (exit)
$