NAME

Text::MicroMason::Docs::Related - A Brief Survey of Templating Modules

RELATED MODULES

Text::MicroMason is just one of dozens (or hundreds) of templating distributions on CPAN.

This document mentions a few related modules and includes a brief discussion of some similarities and differences among them.

Selecting a Templating System

There are serveral ways we can differentiate between templating systems:

Perl Syntax vs. Little Languages

Some templating systems use Perl syntax for both interpolated expressions and flow control, including Text::Template, Template::Perl, and Text::ScriptTemplate.

Others use "little languages", including Template::Toolkit and HTML::Template.

Just Templating vs. Web Application Framework

Some templating systems just provide functions to fill in templates, like Text::Template.

Others are part of full-blown web application frameworks like Apache::ASP, ePerl, HTML::Embperl, and HTML::Mason.

Modular vs Monolithic

Some templating systems are not particularly configurable or extensible.

Others support various kinds of extensions, including Template::Toolkit, HTML::Mason and Text::MicroMason.

Interpreted vs. Compiled

Some templating systems repeatedly parse the template from scratch every time it is used.

Others parse the template into an intermediate data structure and then iterate over that each time the template is used.

Others convert the template into equivalent Perl source code which can be compiled into a directly-executable subroutine and used repeatedly, including HTML::Mason and Text::MicroMason.

HTML::Mason

See HTML::Mason for a much more full-featured version of the capabilities provided by this module.

If you've already got HTML::Mason installed, configured, and loaded into your process, you're probably better off using it rather than this package. HTML::Mason's $interp->make_component() method allows you to parse a text string without saving it to disk first.

The level of Mason compatibility is described in Text::MicroMason::HTMLMason.

Compatibility with Other Templating Systems

I've also recently added mixin classes that emulate the template syntax used by Apache::ASP, Embperl, HTML::Template and Text::Template.

Because these mixins share the underlying implementation of compiling a custom Perl subroutine, they theoretically could execute faster than the run-time evaluation mechanisms used by the originals, although no benchmarking has been performed yet.

SEE ALSO

For distribution, installation, support, copyright and license information, see Text::MicroMason::Docs::ReadMe.