On Tue, Aug 15, 2006 at 07:48:26PM -0400, Jesse Erlbaum wrote:
> Hi All --
>
> Question for the group, at the very distinct risk of starting a holy
> war:
>
> What is the general opinion of HTML::Mason?


It's a big and fairly powerful templates-on-steroids system. I have
ideological objections to the mixing of code and HTML, but apart from
that it's OK. I'd much rather be using Template Toolkit, though. And I'm
much more confident that I could teach TT's minilanguage to a web
designer than Mason.

> It seems to be the framework of choice, nowadays, for Perl-based server
> page systems (i.e., PHP, JSP, ASP -- any system which puts code in
> pages). By the look of it, Mason seems like it has more life than
> EmbPerl. Is that correct? Are there any other leading Perl-based *SP
> systems I should consider?


Er. Are you sure? Most people who want to get stuff done use Catalyst
for the framework side, and TT for the View component. Recently, anyway.

Of course, reading back, you said you want something that embeds code in
pages. I'd question the logic and taste of this, but clearly lots of
people like doing it. I guess as long as you stick to embedding purely
presentation layer logic in the page it's not fundamentally horrible,
but I still don't like it.

I don't think I would start a new project using Mason without thinking a
great deal about why it was a better approach. It seems to encourage
sloppiness by allowing much more logic to exist in the View than I'm
really happy about. Probably requires greater discipline on the part of
developers to not do naughty things.

> (Those who know me probably are concerned I've lost my mind.
> Rest-assured, I'm not about to abandon CGI-App/HTML-Tmpl in favor of any
> *SP system. This is for a particular project need which is best served
> by a server-page architecture.)


Again, not to be awfully fanboyish, but I would hesitate to use H::T in
a new site. Sure, it's fast, but so is TT once you take the compilation
hit. CGI::Application is fast, too, but you end up writing a lot more
code than you do with a framework like Catalyst.

In summary, I'd go for TT and Catalyst, for most applications. Of
course, there will be exceptions -- what is the intended platform for
your app? Does it have to run as a CGI, rather than via mod_perl or
FCGI?

/joel