Positron

Positron is a family of templating systems for Perl 5. Unlike usual templating systems, these do not operate on text, but rather on a tree of HTML elements, or data structures in memory.

Still a work in progress, but the data template part is considered finished.

Latest version: 0.1.3

Links

News

Positron version 0.1.3 released

2014-01-23

Version 0.1.3 of Positron has been released. Adds a lot of new features, but still just for array reference DOM representation. Also, I like Test Driven Development.

Positron bugfix version 0.1.1

2013-12-11

A bug-fixing version 0.1.1 of Positron has been released. The only fix was in the automated tests, specifically some Storable files I had created to be passed along.

Positron version 0.0.7 released

2013-12-11

Version 0.0.7 of Positron has been released! Now with our own regular expression based expression engine, and both hardening and softening!

Positron version 0.1.0 released

2013-12-11

Version 0.1.0 of Positron has been released. This is the first version with actual support for DOM Templating via the Positron::Template module. Not much documentation yet.

Positron version 0.0.8 released

2013-12-11

Version 0.0.8 of Positron has been released! The switch construct of Positron::DataTemplate now uses the "|"-sigil, not the "?" one. This sigil is now used for "conditional keys", a shortcut to turn a part of a hash on or off.

Goodbye, Parse::RecDescent

2013-12-10

The grammar for Positron::Expression is parsed by the Parse::RecDescent module. While a great multi-purpose parser, the module has some limitations which are gradually overshadowing the benefits. I'm in the process of replacing it with a home-grown parser based on regular expressions.

Positron version 0.0.5 released

2013-09-09

Version 0.0.5 of Positron has been released. This release adds the missing constructs: an assignment operator "=" and the escaping "~".

Positron version 0.0.4 released

2013-07-25

Version 0.0.4 of Positron has been released. This release adds the special environment variable '_' to represent the entire data of an environment, and wrapping.

Wrapping in Positron templates

2013-07-19

I'm adding template wrapping functionality to the Positron templates, where an outer template passes a part of itself to an inner template. I need to decide whether this part is already evaluated before passing it down, or if it gets evaluated inside the inner template, and it's environment.

Implementation questions about "_" in Positron

2013-06-10

I'm currently planning to include the "_" in Positron, to reference the variable being looped over, or the complete environment data. Questions remain about where to implement this.