Ответ 1
Инлайн:: Perl5
Получите его от http://modules.perl6.org/
panda install Inline::Perl5
В следующем примере показано, как импортировать и вызывать Perl 5 module Text::Unidecode
, "транслитерацию Unicode последней инстанции" с Perl 6.
Установите модуль, если у вас его нет
perl -MCPAN -e "install Text::Unidecode"
Теперь код
use Inline::Perl5;
use Text::Unidecode:from<Perl5>;
my $result = Text::Unidecode::unidecode('Solidarność');
say($result);
В качестве альтернативы более гибким способом является импорт Inline:: Perl5 самостоятельно, создание нового контекста и оценка вызова функции в этом контексте
use Inline::Perl5;
my $p5 = Inline::Perl5.new;
$p5.use('Text::Unidecode');
my $result = $p5.call('Text::Unidecode::unidecode', 'Solidarność');
say($result);
В любом случае, это печатает
./perl6-m ~/perl/usefrom5.pl
Solidarnosc
Более длинный обзор доступен в Readme on Github
Историческая перспектива
Ранее существовали еще два проекта по совместимости. Используйте v5 и проект blizkost. V5 все еще работает, несколько. Близкость сейчас совершенно неактуальна.
Использовать v5
panda install v5
По состоянию на конец 2014 года, v5 не компилируется под JVM Rakudo. Он компилируется под Rakudo на MoarVM (он также не компилируется под Rakudo на ParrotVM).
blizkost
Несколько лет назад, чтобы принести Perl 5 на ParotVM и использовать виртуальную машину для обеспечения совместимости. Поскольку это решение, специфичное для VM, оно было отменено в пользу Inline:: Perl5.