I like more
Template::Toolkit. There are a few reasons but the important one is ergonomy - visibility of the template in the HTML. For example your code:
<html>
<head><title>Test Template</title>
<body>
My Home Directory is <TMPL_VAR NAME=HOME>
<p>
My Path is set to <TMPL_VAR NAME=PATH>
</body>
</html>
and TT style code:
<html>
<head><title>Test Template</title>
<body>
My Home Directory is [% HOME %]
<p>
My Path is set to [% PATH %]
</body>
</html>
For me the template variables here are much more visible, while in
HTML::Template you need to concentrate a bit to see where the Template is and where the HTML tags are.