CLでSRFI-59 — #:g1

Posted 2012-02-12 14:08:00 GMT

CLでSRFI、今回は、SRFI-59の「Vicinity」です。
プログラムをインストールする際にファイルの配置が色々と問題になりますが、その辺りの整備のためのSRFIです。
CLの様にOS独立の論理パス等を設定してポータビリティを上げるという方式ではなく、基本になるディレクトリ5つのベースディレクトリをプログラムからポータブルに利用できるようにしておくのが基本のアイデアのようです。

動作

(program-vicinity)
;=> *load-pathname* が取得できる

(library-vicinity)
;=>  #P"/l/sbcl/share/lib/"

(implementation-vicinity)
;=>  #P"/l/sbcl/1.0.55/src/"

(user-vicinity)
;=>  ""

(home-vicinity)
;=>  "/home/mc"

移植について

そのまま移植しても使い勝手的に微妙なところですが、割とそのまま移植しました。

comments powered by Disqus