ちょっと思い立ってLISPをMSYS2/MinGW64に入れてみようとしました。
Wikipedia にある Common Lisp の処理系をかたっぱしからコンパイルしようとしたのですが駄目でした。
バイナリの処理系にアクセスしたりするので結構面倒みたいなんですよ。インストールに動作しているCommon Lisp がないといけないこともあるし。
結局色々とバイナリを入れることに。ちなみに、Clojureは Common Lispライクですが、Common Lispとは別物のようです。あと、Scheme は今回さわってないです。Dr.Racket があるし。
Java 上で動作する clojure はインストール用のスクリプトがあるので、それがバイナリを取ってきてインストールしてくれます。勝手にWindows用のを取ってくるし、WindowsのJava環境とかを勝手に見てるみたいですぐに動作しました。/usr/local/bin に勝手にインストールされたのでパスも通ります。(今見たら環境変数の JAVA_HOME が設定してあったので、それで動作したのかも。。。)
CLISPもコンパイルはできませんでしたが、古いバイナリが残っていたのでごそっと解凍したら動きました。どうにもMinGWでは64bitではコンパイルできなくて32bitじゃないとだめだという記述がありました。32bitのコンパイル環境はインストールしてないんだよなぁ。でも、バイナリは2010年のものだからねぇ。
一番使われてるという Steel Bank Common Lisp はあきらめて普通のインストーラーを取ってきました。ただ MSYS2 のコンソールから使うためには PATH を通して sbcl.core があるディレクトリを SBCL_HOME に設定する必要があります。
本当は色々と試してみたいんですがね。