Автоматическое взаимодействие с кодом Perl - PullRequest
1 голос
/ 25 ноября 2010

Мне было интересно, есть ли способ автоматически взаимодействовать с кодом Perl 5, без создания явных API и публикации его по какому-либо протоколу. Я не хочу ограничивать этот вопрос какими-либо конкретными способами достижения этого - я ищу любые идеи.

Доступ к Ruby возможен из языков, основанных на JVM, например, через JRuby; нативно скомпилированные языки обычно доступны через нативные общие библиотеки / стандартные соглашения о вызовах для этой платформы; другие могут иметь интерфейс, автоматически сгенерированный из кода ... Какие есть варианты для Perl?

Ответы [ 2 ]

4 голосов
/ 25 ноября 2010

Существует библиотека для встраивания Perl в вашу программу (см. Perlembed.pod), которая компилируется автоматически - ее может использовать любой язык, pyperl для Python, расширение PEAR "Perl" для PHP, несколько попыток использования Perl 5 из Perl 6 несколько попыток запустить Perl из JVM (все не завершено), Perl.NET.

Также вы можете пойти другим путем, встроить программу на другом языке в Perl и просто вызывать подпрограммы Perl из программы на другом языке. Основная программа Perl будет состоять из вызова вашей программы на другом языке. Существует большое количество модулей CPAN, которые интегрируют другие языки.

4 голосов
/ 25 ноября 2010

Как вариант, вы можете встроить интерпретатор Perl, как показано здесь или здесь или здесь

...