Please register me with the following details:
Name: Ariel Brosh
Email: perl@atheist.org.il
Homepage: none, please. I have no technical home page.
User-id: SCHOP
Stuff to upload
1) HTPL (Namespace: HTML::HTPL::, additional modules under Tie:: and
Apache:: and a Parser:: module used only for setup. Also a Crypt::Simple
module but it will be removed on future versions.
This is an application containing stand alone C code used as a compiled
CGI, or a ModPerl module, using the above code a bit of inefficiently,
that implements my own HTML+Perl integration./
It's different from ASP, Mason and EmbPerl because:
a) Pages are precompiled to pure perl script. Unreadable, but pure perl.
Internal caching system (that has some security hazards that are taken
care of, because a writable directory for the web server is needed) caches
compiled scripts. If the compiled script is up to date, htpl.cgi will
launch perl *or use Embedded perl interpreter if possible - no additional
fork()* to run the script.
b) It has a dataset abstraction, encapsulating SQL, LDAP, XML and CSV.
(XML and LDAP in pre-alpha)
c) It has HTML generating functions for tedious tasks - tables, including
formatting - ROWSPAN/COLSPAN, colors, and dynamic filters for location
sensitive attributes, (eg. blue odd rows, yellow even rows). <UL> based
tree view with expansion, simple histograms, templates with loops and
conditions, to be edited in a target HTML editor.
d) It provides lots of standard modules via its standard library,
including persistent objects, config files for the finished site, internet
address validation, www pages fetching, string processing, stash access,
time and date functions, and lots more.
e) It has a macro processor that parses macros either as lines in Perl
coe, or CF/Miva style tags <HTmytag>, enabling users lots of internet
functionality and basic programming (functions and easily encapsulated
classes) without knowledge of perl, or very little. It is still
implemented using the powerful mod perl, or as cgi scripts fast as perl.
The code produced is not readable, but it is structural (no perl byte code
style). Macros include additional language features: switch-case
try-catch-throw and others. User can edit the XML file containing the
macros and recompile HTPL with them.
f) It has an installation script that uses CPAN.pm to fetch lots of CPAN
g) It has an HTTP based distribution unit. User can write a function,
install server.htpl (bundled) and configure it to run the function, then
use HTML::HTPL::Client on another machine to get the result - scalar,
array, hash or blessed object. Future versions will cease using
Crypt::Simple (provided with package) and use standard Cipher::'s.
Support for Windows web servers is in working beta.

Documentation is being written by roi@raz.co.il and myself.

2) Mumps to Perl compiler.
This sounds useless, but there are not eoungh free implementations of
Mumps on the internet. Mumps.pm compiles an .mps file to a byte-code style
unreadable perl program. Scripts can be run, run with perl version cached
on a file for better performance, or used with embedded HTML with a
ModPerl plugin. This way, many of the Mumps gurus on the net can use the
power and speed of ModPerl to run web based applications. Databases are
implemented with DB_File or a substitute.
90% complient with Mumps_VM, but has a better web server support.

3) Data::Direct
A module that *emulates* sequential access to an SQL table. (Todo: lock
table). User can open a table, access it sequentially or randomally, use
perl commands to manipulate the rows (for example: get rid of spaces,
calculate new fields that the SQL implementation is not capable of) and
then calls the methods that performs DELETE on the old rows and mass

HTPL has been used in 3 organizations for production applications. It was
written Ad-Hoc, and library functions are added regularly.
Developers can easily add functions and macros. HTPL has been under
developement for 2 years by now. Current verison is 2.60. It has nothing
to do with at least 3 other products called HTPL.


The world is not comprehensible, but it is embraceable:
through the embracing of one of its beings. -- Martin Buber

Search Discussions

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupmodules @
postedApr 29, '00 at 8:58a
activeApr 29, '00 at 8:58a

1 user in discussion

Ariel Brosh: 1 post



site design / logo © 2021 Grokbase