2007
01.21

En un proyecto en el que estoy trabajando, necesito llamar desde Python a antiguas funciones en Perl hasta que sean refactorizadas (convertidas) a Python para tener todo el sistema coherente.

Un amigo me habló de PyPerl pero actualmente está abandonado. 🙁

Suponte que tengas un módulo de perl, llamado mylib.pl y que contenga algo como:

Lo que queríamos era llamar a la función myfunc desde python, sin tener que reescribirla. Así que ideé una forma de llamar funciones de perl desde python usando decoradores, haciendo algo como:

Esto llamaría desde python a la función myfunc en perl (con los parámetros a y b) que tengas definida en el módulo mylib.pl. Se pueden usar listas (y matrices como listas de listas) y diccionarios, que serán transformados convenientemente a perl.

Lo cierto es que funciona muy bien. 🙂
Tiene licencia GPL, y lo puedes descargar aquí: perlfunc.py

Share
  1. Carlyle: Nice to hear that! 🙂 Perhaps it came to late for us (at least in this project). 🙄

    Like or Dislike: Thumb up 0 Thumb down 0

  2. FWIW, http://wiki.python.org/moin/PyPerl
    says that
    “* Recent patches by Per Øyvind Karlsen with fixes for python 2.5 as well as some other useful stuff is available at Mandriva SVN”
    so at least one persons is working on it (good!)

    Like or Dislike: Thumb up 0 Thumb down 0

  3. Just a test to see the protection running !

    Like or Dislike: Thumb up 0 Thumb down 0

  4. Y no veas de la de apuros que me ha sacado. 😛
    Un abrazo.

    Like or Dislike: Thumb up 0 Thumb down 0

  5. Estos frikis picacodigos 😉

    Like or Dislike: Thumb up 0 Thumb down 0