XSLTはXMLを変換するためのテンプレート言語ですが、関数型プログラミング言語とよく似た特徴を持っています。
本発表では、XSLTを関数型言語として捉え、実際にBrainfuck処理系を実装した事例を紹介します。
テンプレート適用によるパターンマッチ、変数の不変性、再帰的な処理といった関数型的な特徴を活用し、
ループや状態管理をXSLTでどのように記述できるかを具体的なコードとともに解説します。
Brainfuckのようなチューリング完全な処理系を実装できることから、XSLTもチューリング完全なプログラミング言語であることを示します。
この実装を通じて、関数型プログラミングの視点を広げるきっかけになれば幸いです。