В настоящее время у меня есть программа, написанная на C, и я заинтересован в интеграции в него довольно длинного сценария Perl, написанного кем-то другим, который выполняет аналогичную функцию, но делает это другим способом. Я не заинтересован в ручном переводе всего Perl-скрипта на C.
На мой взгляд, есть несколько различных вариантов:
system ("perl script.pl")
и направьте ввод и вывод по конвейеру, но я чувствую, что это решение не переносимо и не выглядит очень элегантным. perlcc
) для компиляции Исходный код Perl в исходный код C во время компиляции, а затем просто включить его в остальную часть моей программы. Хотя на первый взгляд я подумал, что это будет лучший вариант, в сообществе Perl (или, по крайней мере, в той его части, которую показал мне Google), похоже, существует широкий консенсус в отношении того, что делать такой перевод не очень хорошая идея может быть, просто из соображений скорости, что для меня не проблема). Это также (может?) Позволит мне вызывать подпрограммы Perl из кода C, что было бы огромным плюсом. Итак, мой вопрос: какой из этих вариантов (или ни один из вышеперечисленных) самый элегантный и портативный? Я понимаю, что вызов этой программы Perl из программы на языке C - уже беспорядочный прием для начала, но наименее беспорядочное решение, вероятно, будет лучшим.
Спасибо!