npm install perlSynchronous but useful embedded Perl for node.js
================================================
This module is still working, but @tokuhirom don't want to maintain this module. MAINTAINER needed! Please contact me at github issues.
SYNOPSIS
--------
var Perl = require('perl').Perl;
var perl = new Perl();
var ret = perl.evaluate("reverse 'yappo'");
console.log(ret); // => oppay
var Perl = require('../index.js').Perl;
var perl = new Perl();
perl.use('LWP::UserAgent');
var ua = perl.getClass('LWP::UserAgent').new();
var res = ua.get('http://utf-8.jp/');
console.log(res.as_string());
Classes
-------
#### var perl = new Perl()
Create new instance of Perl.
#### var retval = perl.evaluate(Str code)
evaluate the perl code and get a return value.
#### var klass = perl.getClass(Str name)
Get a class object(Instance of PerlClass) from perl.
#### var klass = Perl.blessed(obj)
Same as Scalar::Util::blessed.
#### var val = perl[funcname]
Get a PerlMethod object.
#### var val = obj[funcname]
Get a PerlMethod object.
You can get a instance of this class by Perl#getClass.
#### var val = klass[funcname]
Get a PerlMethod object.
#### var val = method()
Call perl5 function and get a return value in scalar context.
You get a exception when Perl5 throws exception.
#### var val = method.callList()
Same as above, but callList calls function in list context.
Installation
------------
node-perl requires a perl5 binary built with -fPIC and -Duseshrplib. Normally, linux distribution's system perl is usable.
You can build a perl binary for node-perl with perlbrew command.
$ PERLBREW_CONFIGURE_FLAGS=-de perlbrew install perl-5.16.1 -Duseshrplib -Duseithreads -Dusethreads -Accflags='-fPIC' -nv
$ perlbrew use perl-5.16.1
If you got a error while loading libperl.dylib, please set a DYLD_LIBRARY_PATH to perl5 library path.
Notes
-----
* The calls to Perl are synchronous ones.
THANKS TO
---------
Based on https://github.com/hideo55/node-perl.
License
-------
http://tokuhirom.mit-license.org/