my $function = sub { # ...do stuff... }; # Call the sub $function->('param'); #### sub function { # ...do stuff... } # Call the sub function('param); #### my $vars = { 'date' => $date, 'format' => sub { return ucfirst lc $_[0]; }, }; $template->process('example.tt', $vars);