読者です 読者をやめる 読者になる 読者になる

sbcl 1.0.21.18

--scriptオプションが追加されたとのことで、CVSから拾ってきて試してみる。
-> Win32用野良ビルド(doc付き)

C:\sandbox\cl>sbcl --version
SBCL 1.0.21.18

C:\sandbox\cl>sbcl --script palindromic-quine.l

This is experimental prerelease support for the Windows platform: use
at your own risk.  "Your Kitten of Death awaits!"
(format t #1="(format t #1=~S #1# (reverse #1#));))#1# esrever( #1# ~S=1# t tamrof(" #1# (reverse #1#));))#1# esrever( #1# "(format t #1=S~ #1# (reverse #1#));))#1# esrever( #1# S~=1# t tamrof("=1# t tamrof(

また、--script実行時はshebang行を読み飛ばすように。

yz@yz-ubuntu:~/temp$ cat test.l
#!/usr/local/bin/sbcl --script
(format t #1="(format t #1=~S #1# (reverse #1#));))#1# esrever( #1# ~S=1# t tamrof(" #1# (reverse #1#));))#1# esrever( #1# "(format t #1=S~ #1# (reverse #1#));))#1# esrever( #1# S~=1# t tamrof("=1# t tamrof(

yz@yz-ubuntu:~/temp$ ls -l test.l
-rwxr-xr-x 1 yz yz 240 2008-10-16 01:02 test.l

yz@yz-ubuntu:~/temp$ ./test.l
(format t #1="(format t #1=~S #1# (reverse #1#));))#1# esrever( #1# ~S=1# t tamrof(" #1# (reverse #1#));))#1# esrever( #1# "(format t #1=S~ #1# (reverse #1#));))#1# esrever( #1# S~=1# t tamrof("=1# t tamrof(

スクリプト言語っぽい使い方が出来るようになった。これは便利。

おまけ

make-windows-installer.shはマニュアルを入れてくれない(というかそれ以前にWindowsだとマニュアルが一部ビルドできない?)ので、sbclのソースのtools-for-buildディレクトリにあるwxs.lispをちょっといじってみた。
http://dl.getdropbox.com/u/215714/wxs.lisp
ソースのdocフォルダの中身を適当に退避しておいて、代わりにLinuxでビルドしたマニュアル(/usr/local/share/doc/sbcl/*)を入れておく。

なんかこれもう少しいじれば他のところでも便利に使えそうだ。無駄にWiX使いたくなりそう。