#:g1: clojurianの紹介

Posted 2014-07-14 03:00:00 GMT

(LISP Library 365参加エントリ)

 LISP Library 365 の195日目です。

clojurianとはなにか

 clojurianは、Moritz Heidkamp氏作のchickenでClojure風の構文を使うためのライブラリです。

パッケージ情報

パッケージ名clojurian
Chicken eggs:clojurian - The Chicken Scheme wiki

インストール方法

$ sudo chicken-install clojurian

すれば、

(use clojurian-syntax)

でClojure構文、

(use clojurian-atom)

で、Clojureのアトミック操作(まだ実験版)を模したライブラリが利用できます。

試してみる

 clojurian-syntaxの方は、Clojureの構文ですが、有名どころは揃っている感じです。
用意されているのは、

というところ

(doto (make-vector 10)
      (vector-fill! 42))
;=> #(42 42 42 42 42 42 42 42 42 42)

(-> 10 (- 2) (/ 5) (* 3)) ;=> 4.8

(->> (iota 10) (map add1) (fold + 0)) ;=> 55

 アトミック操作の方は、(use clojurian-atom)で利用できますが、

が用意されています。

(define *u* (atom (list 1 2)))

(atom? *u*) ;=> #t

(atom-compare-and-set! *u* (atom-value *u*) (cdr (atom-value *u*)))

(atom-value *u*) ;=> (2)

まとめ

 今回は、clojurianを紹介してみました。
ChickenにもClojureっぽい構文を使いたいような人っていたんですね。

comments powered by Disqus