in reply to Extending the Perl Syntax on PERL + HTML envirionments.

I think that ASP / PHP way of embedding code in HTML using '<% %>' is butt ugly, even more so when you need to use if / else branching constructs:
<% if($some_condition) { %> <b>Some text</b> <% } elsif($some_other_condition) { %> <b>Some other text</b> <% } else { %> <b>Yet more text</b> <% } %>
Yuck! (Don't your eyes just glaze over when reading that?) Is that what branching looks like in your templating system?

The Mason way of embedding is simpler and more economical.
Contrast
<table border="0"> <% for ( @names ) { >> <tr> >> <td color="#333333">$_</td> >> </tr> } %> </table>
with
<table border="0"> % for ( @names ) { <tr> <td color="#333333"><% $_ %></td> </tr> % } </table> <%doc> This is table.mas </%doc> ----------------------------------- # now to assign this HTML to a variable: my $html = $m->scomp('table.mas');

If you want to re-invent wheels, why not re-invent one that hasn't been re-invented yet (in Perl)? :-) Be well.