Jeff japhy Pinyan
CPAN ID: PINYAN japhy@pobox.com http://www.pobox.com/~japhy/
Description:
Using my recently uploaded module, DynScalar, template woes are a thing of the past. By wrapping a closure in an object, we have beautiful Perl code expansion.
The following is an over-simplified example.
#!/usr/bin/perl
# coming to your CPAN mirror soon
# http://www.pobox.com/~japhy/modules/
use DynScalar 'newTemplate';
use strict;
use vars '$data'; # has to be package var
my $template = newTemplate {
my $out = << "END";
Hello, <b>$data->{USER}</b>. You've been here
$data->{COUNT} times.
<br><br>
<ul>
END
for (@{ $data->{NODES} }) {
$out .= qq{<li> <a href="$_->{href}">$_->{name}</a>\n};
}
$out .= "</ul>\n";
$out;
};
$data = getInfo(magically_determine_user());
print HTML_page($template);