Hi David > I have a hash function written by another organization that I need to use. > It is implemented in perl. I've been attempting to decode what they are > doing in their hash function and it is taking way too long. I've > identified two functions in a perl module that I would like to 'call' from > a python program. I found the following: > http://www.annocpan.org/~GAAS/pyperl-1.0/perlmodule.pod > > and wondered if anyone had any comments. This thing implements a perl > interpreter inside python. That seems like overkill to me. > > I wonder what wisdom this group can offer.
Why not the other way around. Use their .pl-program and use the functions inside it - then cross-call in to your python module: [--- someperl.pl ---] py_prepare $result1 = hash_proc_1($whatever); $result2 = hash_proc_2($whatever); py_calculate( $result1, $result2 ); # - - - - - - - - - - - - - - - - - - # use Inline Python => <<'END_OF_PYTHON_CODE'; def py_calculate (r1, r2): do_something(r1 * r2) def do_something(result): return x - y END_OF_PYTHON_CODE [/--- someperl.pl ---] This approach ensures that the strange perl functions run clean int their native environment. You have access to all your py- Modules, as in a normal python- environment (Python globals are directly imported, afaik). [--- someperl.pl ---] use Inline Python; doit(); __END__ __Python__ from mylibrary import doit ... ... [/--- someperl.pl ---] (http://search.cpan.org/~neilw/Inline-Python-0.22/Python.pod) I use this sometimes, it is quite nice. Regards M. -- http://mail.python.org/mailman/listinfo/python-list