#:g1: clapの紹介

Posted 2014-10-29 15:00:00 GMT

(LISP Library 365参加エントリ)

 LISP Library 365 の303日目です。

clapとはなにか

 clapは、Ryohei Ueda氏によるPythonの標準ライブラリをCommon Lispに実現しようというプロジェクトです。

パッケージ情報

パッケージ名clap
Quicklisp×
プロジェクトサイトgaraemon/clap · GitHub

インストール方法

 上記のプロジェクトサイトからチェックアウトしてきてQuicklispのlocal-projectsに置けば

(ql:quickload :clap)

可能です。

試してみる

 2010年末に始まったプロジェクトですが、3年位前から動きが停滞しています。
現在実装されているところとしては、

 あたりで

が上記に相当します。

 少し紹介してみると、

(clap-builtin:whitespacep #\Space)
;=>  #\ 

(clap-os:getenv "LANG") ;=> "ja_JP.UTF-8"

(clap-hashlib:hexdigest (clap-hashlib:md5 "foo")) ;=> "acbd18db4cc2f85cedef654fccc4a4d8"

(clap-builtin:dict '(("greets" . "おはよう")) :test #'equal) ;=> #<HASH-TABLE :TEST EQUAL :COUNT 1 {102EE3E613}>

(clap-string:substitute (clap-string:make-template "$greets日本") (clap-builtin:dict '(("greets" . "おはよう")) :test #'equal)) ;=> "おはよう日本"

みたいなところです。

まとめ

 今回は、clapを紹介してみました。
以前丸ごとQuicklispに申請された時には、まだ発展途上ということで登録は却下されましたが、今なら大分ゆるくなってきたので登録されるかもしれません。もしくはサブモジュールごとに登録というのもありかもしれません。

comments powered by Disqus