JE, version 0.042
JE is a pure-Perl ECMAScript (JavaScript) engine. Here are some of its advantages:
Here are its main weakness:
This is still an alpha release. The core objects are not yet complete, but as long as you don't need all the methods of dates (more precisely, those beginning with â~setâTM), this module is actually usable.
If you have the time and the interest, please experiment with this module (or maybe even lend a hand :-). If you have any ideas as to how the API could be improved or reworked, please e-mail me.
CHANGES IN THIS RELEASE
New feature: We extend ECMAScript by treating hyphens in regexp character
classes that are adjacent to \d, \s or \w always as literal
hyphens and no longer as syntax errors (RT #51123).
Bug fixes:
⢠JE::NumberâTMs id method has been fixed such that === and isNan now
recognise positive NaN as NaN on Windows (RT #51036).
â¢Â Parsing long strings no longer causes perl 5.8 to crash on Windows
(see http://www.nntp.perl.org/group/perl.cpan.testers/2009/11
/msg5881496.html). I fixed this by reÃ&hibar;ncorporating part of Kevin
CameronâTMs code (RT #49607) that I had simplified to make it faster.
TO DO
INSTALLATION
The easiest way to install this module is to use the CPAN module or the cpan script:
[sudo] perl -MCPAN -e "install JE"
[sudo] cpan
cpan> install JE
Or you can use the following:
perl Makefile.PL
make
make test
[sudo] make install
PREREQUISITES
This module requires perl 5.8.3 or higher and the following modules:
⢠Scalar::Util version 1.14 or later
⢠The TimeDate distribution (more precisely, Time::Zone, Date::Format
and Date::Parse)
⢠Encode 2.08 or later
For perl versions earlier than 5.9.4 it also requires Tie::RefHash::Weak.
Later it will probably require Unicode::Collate.
There is a slight incompatibility with perl version 5.8.3. If you try to create a regular expression with invalid modifiers, you will get a warning as well as a SyntaxError. This causes one of the test scripts (parse08-regexps.t) to fail.
DOCUMENTATION
After installing, you can find documentation for this module with the perldoc command.
perldoc JE
Or try using man (it's faster, in my experience):
man JE
ACKNOWLEDGEMENTS
Thanks to Kevin Cameron [ kevin cameron com ] for his contributions,
to Max Maischein [ webmaster corion net ] for letting me use his tests,
to Andy Armstrong [ andy hexten net ], Yair Lenga [ yair lenga gmail com ], Alex Robinson [ alex solidgoldpig com ], Christian Forster [ boronk boronk de ] and Imre Rad [ radimre freemail hu ]
for their suggestions,
and to the CPAN Testers for their helpful reports.
COPYRIGHT AND LICENCE
Copyright (C) 2007-9 Father Chrysostomos
This program is free software; you may redistribute it and/or modify it under the same terms as perl.