Blast From the Past

Was cleaning up a few files on the server today and blundered across a few code files that look something like this on the inside


...
< H3 >Process Query< /H3 >
[-
while my $row (DB->fetc) {
-]
< TR >< TD >[+$row->[0]+]< TD >[+$row->[1]+]...
...

[-}-]

...

[$ if ($err) $]
< P >< FONT COLOR='RED' > < B >Error: [+ $err->{code} +] < /B >< /FONT >
...
[$ endif $]

Ok it kinda look like perl in some sort of bizarre hybrid with really badly made up HTML. The file type was both .HTML and .EP. Has know idea what .EP was and a quick google got me

A .ep file is a saved Pencil document. Pencil is an open source sketching and prototyping tool, which can be used either as a standalone application or as a plug-in for FireFox.

Which isn't possible as the file was ASCII and the date on the file was 1998. Back then FF was just a little project by Netscape, which was riding high with a capitulation of a few billion, after being purchased by AOL and Zuckerberg was still getting his ass kicked in high-school.

So no leads there. The funny thing is while the .EP pages would not run the .HTML did at least on our old Apache instance and the ones that did not try to connect to a DB that was long long gone. A quick look in one of the Apache config files I found



 SetHandler perl-script 
  PerlHandler HTML::EMBperl 
...

What is this thing I wonder so off to CPAN and sure enough it does exist though now it is Embperl still seems to have new code added and it even manages to keep some web space on apache.org

After some digging on the Apache site I found the complete history going all the way back to 97. Well neat to find something that has hung around for that long and despite how the web has changed it is still there filling some niche market.

Looking at the code if you really need a simple template suite that installs anywhere this is for you unless you like Mojolicious but that breaks CPAN so we won't go there ;).

Some more digging about and it seems it has been the same maintainer and developer since day one as well though this may be a record though I think Tim Bunce and DBI has the record in that department.

Funny been playing with perl for years and never came across this templateing system I wonder where it is being used today???

I guess some things never get old.

c8f308e67ccfc3a5c635fade4f6c377c2a6816c8.jpg

5 Comments

You forgot Mason which IMHO has still a large community. The embedded Perl of Mason uses a syntax which is very similar to Mojo embedded Perl.

I do not understand why you believe that "Mojolicious breaks CPAN". You can use any coding style you want within a Mojolicious-App, also any other modules, use other template renderers, Moose, Mouse, Moo etc. Also you can use many modules of the Mojolicious distribution stand-alone. E.g. Mojo::Base for minimal OOP providing attributes, or Mojo::Dom for parsing XML/HTML and accessing it via CSS-selectors like jQuery or HTML::Zoom.

For the avoidance of doubt: Mojo::Template can be used standalone and is not restricted to HTML:


# perl -e 'use Mojo::Template;my $o = Mojo::Template->new->render("1+1 = ");print $o;'
1+1 = 2

This blog-software is really crap.

Embperl 2.5.0 still hanging out in beta right now.

Leave a comment

About byterock

user-pic Long time Perl guy, a few CPAN mods allot of work on DBD::Oracle and a few YAPC presentations