#:g1: lambda-readerの紹介

Posted 2014-02-07 15:00:00 GMT

(LISP Library 365参加エントリ)

 LISP Library 365 の39日目です。

lambda-readerとはなにか

 lambda-readerはBrian Mastenbrook氏作のlambdaをλと書けるようにするリーダーマクロのパッケージです。
現在はFare氏がメンテナンスをしている様子。

パッケージ情報

パッケージ名lambda-reader
Quicklisp
CLiKihttp://cliki.net/lambda-reader
Quickdocshttp://quickdocs.org/lambda-reader

インストール方法

(ql:quickload :lambda-reader)

試してみる

 どんな関数があるかは、Quickdocsで確認できます。

 named-readtablesでリードテーブルが定義されているので、そちらを使う例を紹介します。

(named-readtables:in-readtable :λ-common-lisp)

(use-package :λ-reader)

((λ (x) x) 42) ;=> 42 '((λ (x) x) 42) ;=> ((Λ (X) X) 42)

リーダーだけでなく、プリンタも設定されているので、lambdaがλと表示されるようになります。

まとめ

 今回は、lambda-readerを紹介してみました。
Racketでもlambdaをλと書けたり、Emacs上での表示を変える方法など、試みは色々ありますが、好きな人は好きなのではないでしょうか。
ちなみに、lambda-readerのコードは、リーダーマクロやプリンタの設定の使い方の一例として面白いと思うので、一度眺めてみてはいかがでしょうか。

comments powered by Disqus