HTML::Seamstress

HTML::Seamstressというテンプレートエンジンが最近気になっています。SYNOPSISによれば、HTML::Seamstress provides "fourth generation" dynamic HTML generation (templating).と、TTのような「第三世代」のテンプレートエンジンとは違うんだと言うことをはっきり主張していて力強い限りです。もちろんCatalyst::View::SeamstressもあるのでCatalyst方面もばっちり。
HTMLもしくはXMLのDOMツリーに、値をぱちぱちはめ込んだり枝を刈ったりしていくタイプのものです。事前にHTMLファイルからスケルトンクラスを作り、それをアプリケーションクラスから呼び出します。The meat-skeleton paradigmだそうです。
Seamstressそのものは、HTML::Treeのサブクラスというかラッパーに近いもので、HTML::TreeBuilderが構築したツリーに対して、HTML::ElementHTML::Element::Libraryオブジェクト経由で手を加えていくわけです。
Perlで使われているテンプレートエンジンはTTやH-Tが多いと聞きますが、こういうタイプのものも普及して枯れていくと、適材適所を実現することが出来るので嬉しいですね。