Template Toolkit for Haskell

Count 1-10:

[% FOREACH i = [1..10] -%] [% i; (!loop.last) ? ', ' : '.' %] [%- END %]

Users hash:

[% FOREACH user = users.pairs %]

[% user.key %]: [% user.value %] [% END %]

External template:

[% PROCESS template2.tt words = ['dog','cat','pig'] %]