Kang-min Liu
2008-12-26 23:55:35 UTC
Hi, all
Recently I've been trying to use Devel::Declare to re-implement
Template::Declare for this very fancy syntax:
div(id => "salute") { "Hiya" }
And it worked very fine, big success. I'm very impressed by how much
it can be done with
Devel::Declare and B::Hook* modules. Kudos to rafl++
I released the implementation under the name "Markapl" (Mark up as
Perl) on CPAN few days ago.
The Markapl repository is on Github: http://github.com/gugod/markapl/tree/master
And since obra requested, I'm currently integrating it into
Template::Declare. Several basic parts are
all ported, so statement like these are all working now:
div(id => "salute") { "Hiya" }
div("#salute") { "Hiya" }
div(".salute") { "Hiya" }
div("#salute.box") { "Hiya" }
And it's still backward compatible:
with(id => "salute"), div { "Hiya" }
div { attr { id => "salute"} outs "Hiya" }
The development is on "markapl-syntax" branch of Template-Declare
repository, the new code passes
about 60% of tests now. So please take a look, give me some thoughts
and may patches. It's all welcome. :)
btw, I've just done a tool Markpl::FromHTML (on CPAN now) that
currently convert
simple HTML to Markapl. This can be a pretty handy tool when working
with HTML-capable visual designers. :)
Cheers,
Kang-min Liu
Recently I've been trying to use Devel::Declare to re-implement
Template::Declare for this very fancy syntax:
div(id => "salute") { "Hiya" }
And it worked very fine, big success. I'm very impressed by how much
it can be done with
Devel::Declare and B::Hook* modules. Kudos to rafl++
I released the implementation under the name "Markapl" (Mark up as
Perl) on CPAN few days ago.
The Markapl repository is on Github: http://github.com/gugod/markapl/tree/master
And since obra requested, I'm currently integrating it into
Template::Declare. Several basic parts are
all ported, so statement like these are all working now:
div(id => "salute") { "Hiya" }
div("#salute") { "Hiya" }
div(".salute") { "Hiya" }
div("#salute.box") { "Hiya" }
And it's still backward compatible:
with(id => "salute"), div { "Hiya" }
div { attr { id => "salute"} outs "Hiya" }
The development is on "markapl-syntax" branch of Template-Declare
repository, the new code passes
about 60% of tests now. So please take a look, give me some thoughts
and may patches. It's all welcome. :)
btw, I've just done a tool Markpl::FromHTML (on CPAN now) that
currently convert
simple HTML to Markapl. This can be a pretty handy tool when working
with HTML-capable visual designers. :)
Cheers,
Kang-min Liu