Clojure始めました。
ちょっとしたスクリプトを作成しながら勉強中です。
最初にClojureで書かれたソースを見たときは
「このカッコ地獄には絶対慣れない」
と思いましたが、
書いているうちにカッコのおかげで処理や変数の範囲が明確に
なっていることに気づくと違和感を感じなくなりました。
Vimのテキストオブジェクトと相性が良いのも嬉しいです。
Clojureのメジャーなテンプレートエンジン
表題のテンプレートエンジンについて、
Clojureのテンプレートエンジンとして検索してよく出てくるのは
の2つです。
まだ使ったことはありませんが、HTMLテンプレートを作る時は
このどちらかを使うのが良さそうです。
HTML以外に対応したテンプレートエンジン
今回はHTMLではなく、JavaでいうVelocityのような、
メールやテキストファイルのようなHTML以外のテキストに対応した
テンプレートエンジンを探していて、
見た感じがっつりHTML対応な上記2エンジンは使えなさそうでした。
でいろいろ探していて、「clostache」というリポジトリにたどり着きました。
初めて知ったのですが、「mustache」という、
元々Ruby用に開発されてその後様々な言語に対応した
テンプレートエンジンがあり、そのClojure版のようです。
テンプレートファイルをあらかじめ作成しておき、
(clostache/render-resource template-path val-map)
みたいな感じで手軽に使えて良さそうです。
また良いライブラリを見つけたら紹介していきます。