Agora vamos criar o arquivo "index.tt". Se alterou a extensão, cria com a extensão de sua escolha. Crie este arquivo no diretório 'root' de sua aplicação. 
Depois de criar o arquivo index, digite no seu terminal:
 script/myapp_server.pl
Isso irá executar o server de teste do Catalyst, para acessar:
   http://localhost:3000/exemplo
Agora abra o arquivo "index", coloque os comandos abaixo e faça seus teste:
Imprimir a escalar nome:
    <h2>[% nome %]</h2>
Comparar a escalar nome com IF:
IF 'nome' é igual a 'Lucas'
    [% IF nome == 'Lucas' %]
        <h2>Verdadeiro/h2>
    [% END %]
IF 'nome' é diferente a 'Lucas'
    [% IF nome != 'Lucas' %]
        <h2>l;Verdadeiro</h2>
    [% END %]
Comparar a escalar nome com IF e ELSE:
IF 'nome' é igual a 'Lucas'
    [% IF nome == 'Lucas' %]
        <h2>Verdadeiro/h2>
    [% ELSE %]
        <h2>Falso</h2>
    [% END %]
IF 'nome' é diferente a 'Lucas'
    [% IF nome != 'Lucas' %]
        <h2>Verdadeiro</h2>
    [% ELSE %]
        <h2>Falso</h2>
    [% END %]
Comparar a escalar nome com IF, ELSIF e ELSE:
ELSIF 'nome' é igual a 'Lucas'
    [% IF nome == 'Tiago' %]
        <h2>Verdadeiro IF</h2>
    [% ELSIF nome == 'Lucas' %]
        <h2>Verdadeiro ELSIF</h2>
    [% ELSE %]
        <h2>Falso</h2>
    [% END %]
ELSIF 'nome' é diferente a 'Lucas'
    [% IF nome == 'Tiago' %]
        <h2>Verdadeiro IF</h2>
    [% ELSIF nome != 'Lucas' %]
        <h2>Verdadeiro ELSIF</h2>
    [% ELSE %]
        <h2>Falso</h2>
    [% END %]
Até agora só trabalhamos com escala, agora vamos trabalhar com 'array' que é uma lista de escalares e um 'hash' que é um dicionario de escalares.
Imprimir escalares da array cores:
    [% FOREACH row IN cores %]
        <h2>[% row %]</h2>
    [% END %]
Imprimir índices da hash números:
    [% FOREACH row IN numeros %]
        <h2>[% row.key %]</h2>
    [% END %]
Ou:
    [% FOREACH row IN numeros.keys %]
        <h2>[% row %]</h2>
    [% END %]
Imprimir valores da hash números:
    [% FOREACH row IN numeros %]
        <h2>[% row.value %]</h2>
    [% END %]
Ou:
    [% FOREACH row IN numeros.values %]
        <h2>[% row %]</h2>
    [% END %]
Agora que já ensinei algumas coisas básicas em 'Template Toolkit', vou mostrar um pouco como o 'Catalyst' é flexível. Porque flexível? Porque você consegue acessar qualquer função do Catalyst, exemplos abaixo:
Imprimir URL atual com a função uri_for():
    <h2>[% c.uri_for %]</h2>
Resultado: 
http://localhost:3000/exemplo
    
[% c.uri_for('/site') %]
Resultado: 
http://localhost:3000/site
Redirecionar para outra pagina ou site:
    [% c.res.redirect('http://www.perl.org') %]
Finalização
Para saber mais sobre 'Catalyst' e 'Template Toolkit', entre nas URLs abaixo:
Artigo previamente publicado em:
 
 
Até mais.