久々に更新
うーん忙しくてなかなか更新できなかった。 気がつけば、
- Allegro CL 7.0 Release がリリースされて Allegro Prolog や Perl 互換正規表現などライブラリが充実していたり。これで値段が安ければ……
- CMUCL/SBCL の Win32 移植が進行中 (CMUCL は self-host できるところまで行ってるとか)
- Araneida がいろんな環境で使えるとか (気づいてなかった…)
- SBCL でおなじみ danb が trivial-sockets というスクリプト言語風のソケットインタフェースを公開してたり 動機
- Maxima 5.9.1 がリリースされてたり
- lemonodor で紹介されてた Predicate Dispatch はおもしろそうだと思ったり
- CLRFI - Common Lisp Request For Implementation がはじまったり (うまくいくといいなー)
- Practical Common Lisp が順調に進んでいたり(既に amazon で予約済み)
- Lisa の 2.1 beta が出てたり
- The 90 Minute Scheme to C compiler - Marc Feeley @ Montreal Scheme/Lisp User Group の資料が面白そうだったり
うーん、いろいろあったけど忘れた。
更新ついでにスタイルシートとテンプレートをいじってみた。
Araneida on CMUCL + FreeBSD
Araneida を使うときに db-sockets パッケージのビルドに失敗する。 どうやら def-to-lisp.lisp が出力する C のコードがおかしいらしい。 見てみると、改行が…最新の CMUCL だと write でストリームに 出力するときに、改行が入ってしまうのが原因らしい。 これは C の構文的にはエラーになるので、 下記のように db-sockets/def-to-lisp.lisp を修正すればいい。 なんか write のオプションとかで変更できるような気もするけど、 今はとにかくはやく Araneida が使いたいから気にしない。パッチつくる 暇すら惜しい。
;; (dolist (d definition) ;; (write d :length nil ;; :right-margin nil :stream stream) ;; (princ " " stream)) (write-string (remove #\newline (with-output-to-string (s) (dolist (d definition) (write d :length nil :right-margin nil :stream s) (princ " " s)))) stream)
で、ビルド成功。サンプルを動かすところまでできた。 というところで時間切れ。