I’m currently working on a project and need to call old Perl functions from Python (until the perl code is refactorized and translated to python).
A friend of mine told me about PyPerl, but we found it’s currently unmaintained.
Suppose you have a perl module, named mylib.pl, which have a function like:
sub myfunc { my ($a, $b) = @_; ... ... return result; }
We wanted to be able to call myfunc function from python, without having to rewrite it.
So I managed to create a python module to wrap perl functions in python, using python decorators. With it, you can call perl functions this way:
import perlfunc @perlfunc @perlreq('mylib.pl') def myfunc(a, b): pass
This would call the perl function myfunc (defined in library mylib.pl) using a and b as parameters. Lists (and arrays as list of lists) and dictionaries can be passed as parameters (they are conveniently converted to perl).
It seems to work very well. ![]()
It’s licensed GPL, and you can download it from here: perlfunc.py
Posted by Boriel as Computer Science, Programming









(2 votes, average: 4 out of 5)



![[about]](http://www.boriel.com/wp-content/themes/zx-spectrum-moofx/images/about.png)




Carlyle says: