Welcome Perl

How Xslate works

Presenter gfx
Time 2010-10-16 12:00:00
Length 40min
Slides not available
Abstract 高速なテンプレートエンジンであるXslateをテーマに、その内部構造を解説します。
Xslate (http://xslate.org) はまだ新しいモジュールですが、Template-Toolkiの数十倍も高速なテンプレートエンジンです。また、ただ高速なだけでなく、テンプレート変数の自動HTMLエスケープなど、安全性についても配慮されています。しかもそれでいてTemplate-Toolkiに勝るとも劣らない機能をも兼ね備えています。
ところでこのモジュールは、テンプレートを静的にコンパイルして、XSで書かれた専用の仮想マシンで実行するため、従来のテンプレートエンジンと比べて劇的ともいえる高速化を実現しています。それだけに内部構造はやや複雑ですが、一つのプログラミング言語の処理系としてみると面白い特徴があります。とくに、パーサにはTopdown Operator Precedence(下向き演算子優先順位解析法)という手法を用いており、テンプレート構文を継承によって拡張することができるようになっています。また、仮想マシンもテンプレートのレンダリングに特化している点が普通の言語処理系の仮想マシンと異なります。
このトークでは、このXslateのパーサ・コンパイラ・仮想マシンなど内部構造について解説します。ただし、Xslateを知らない方のために、Xslateそのものについてもある程度解説はします。

動画 | Video