Кстати, то ли раньше не было, то ли я каждый раз невнимательно читал, нашел у Template::Alloy функции define_directive и register_function, это, в теории, позволит реализовать функции, которые есть в CTPP и нет в HTML::Template и, если забыть про скорость, получится прозрачная замена