#:g1: alexandriaの紹介

Posted 2013-12-31 15:00:00 GMT

(LISP Library 365参加エントリ)

 LISP Library 365 の1日目です。
とりあえず、開始してみました。
現在、参加者4名。10名位になると一人あたり月3エントリー書けばOKなので、もっと増えることを期待しています!

 今回紹介するライブラリは、alexandriaです。
既に去年の„Common Lisp Libraries Advent Calendar 2012: 誰得なAlexandriaの紹介‟でも紹介されていますが、もちろん重複の紹介もありよ、ということで敢えて紹介してみます。

alexandriaとはなにか

 Common Lispのユーティリティ集の中でも現在Quicklispのダウンロード回数では最も多いものです。
また、依存しているライブラリもかなり多くなっています。(故にダウンロード回数が多いともいえます)

パッケージ情報

パッケージ名alexandria
Quicklisp
公式サイトhttp://common-lisp.net/project/alexandria/
CLiKihttp://cliki.net/alexandria
Quickdocshttp://quickdocs.org/alexandria

インストール方法

(ql:quickload :alexandria)
のみでOKです。

実行例

(alexandria:parse-ordinary-lambda-list '(&optional opt &rest rest &key foo))
;=>  NIL
;    ((OPT NIL NIL))
;    REST
;    (((:FOO FOO) NIL NIL))
;    NIL
;    NIL
;    T

alexandriaについて

 定番とされるユーティリティは大抵このライブラリに含まれています。
Common Lisp標準のものを大体覚えたら、次にはalexandriaの中身もざっと眺めてみると良いかなと思います。

 特にマクロを書く際に必要になるユーティリティは、alexandriaで大抵定義済みなので、マクロを良く書く人は、alexandriaの中身をチェックしてみましょう。

 どんな関数が定義されているかの確認にはQuickdocsのAPI一覧が綺麗に整形されているので参照するのに良いですね。

まとめ

 alexandriaを紹介してみました。
ユーティリティ系のライブラリは、これで決まりという感じですが、俺utilsがQuicklispには多数収録されているので、今後も俺utilsは紹介して行く所存です。

comments powered by Disqus