\begin{Crossfire}
> Mason [aka HTML::Mason] is one of the two `embeded perl' systems for
> mod_perl. The other one is EmbPerl.
others include "eperl", "template toolkit", "Apache::ASP" and more
the whole php/asp "lets put code amongst HTML!" thing is hardly a
unique idea.
HTML::Embperl is similar (in goal) to the others, but:
already has completely integrated sessions (you just access the
"magic" %fdat hash, and it creates/tracks/stores/retrieves a session
for you)
automatically parses certain HTML tags, to (eg) automatically iterate
over rows/columns in tables, set default form values, automatically
switch from HTML-escaping to URL-escaping of output, etc.
can do a full component-based design of your pages, and override
pieces in subtrees, etc. each page only has to contain the unique
content, no boilerplate "include header/footer" statements.
keeps a log of the request (when debugging is enabled), and adds
hyperlinks at the top of the page, so you can see the evaluation and
hyperlink to code lines.
can interactively run pages (from a wrapper perl script) in the perl
debugger, and it shows you the right source lines, etc.
the backend parser is written in C, so its quite a bit faster than
mason (see: http://www.chamas.com/bench/index.html)
properly hooks into the mod_perl cleanup stage, so writing-back
database entries/session, cleaning up the perl environment, etc
happens *outside* the HTTP critical path
it doesn't try and hide the perl, so you can do everything you're used
to in normal perl, with very little changes. (this was one of my main
reasons for choosing it over alternatives)
embperl 2.0 (still alpha) supports multiple syntaxes (including XML,
SSI, Apache::ASP, and straight perl CGI), completely tunable caching,
etc.
(ps. i'm the libhtml-embperl-perl.deb maintainer)
--
- Gus
--
SLUG - Sydney Linux User Group Mailing List - http://slug.org.au/
More Info: http://slug.org.au/lists/listinfo/slug