3 ms·
> Perl 6 ... can even in a limited way run perl5 code. I'm curious what limits you are referring to. (Are you aware of https://github.com/niner/Inline-Perl5?
by raiph 12y ago
> Perl 6 ... can even in a limited way run perl5 code.
I'm curious what limits you are referring to.
(Are you aware of https://github.com/niner/Inline-Perl5? https://github.com/niner/Inline-Perl5?)
- esaym 12y agoNot any limits per se. Was just pointing out that you can't simply run perl5 straight through the perl6 vm and have it work magically.
- raiph 12y agoGotchya. Just to be clear for any others reading along: * One can run (a subset of) Perl 5 code directly on any of the Rakudo backends (thus even on the JVM) by using v5, a Perl 5 compiler written in Perl 6.[1] I think it will be many years, if ever, before v5 parses all of Perl 5 and becomes a good choice for running arbitrary legacy Perl 5 code without tweaks, but it's probably going to be a key piece of technology bridging to Perl 5 in 2015. In particular, there's been talk recently of combining it with Inline::Perl5, discussed next, to provide improved sugar for P5 <-> P6 combinations.[2] * Any host that can run arbitrary C code can run just about any Perl 5 code (including modules that use XS) via libperl, an embedded version of the stock Perl 5 interpreter. Inline::Perl5 uses this approach to allow the Rakudo Perl 6 compiler to run P5 code under P6 control without significant limitations. Inline::Perl5 allows one to pass P5 objects to P6 code that can then alter said objects and pass them back. And vice-versa, with P6 objects passed to P5 for manipulation back in P5 land. One can also create P6 sub-classes of P5 classes, thus using P6 code to tweak or extend P5 code. This already works out-of-the-box for Rakudo Star with the MoarVM backend; it's just a SMOP to make it work likewise for other backends. (There are other nice pieces related to having P5 and P6 work together, but this is already a long comment.) [1] https://github.com/rakudo-p5/v5 https://github.com/rakudo-p5/v5 [2] http://irclog.perlgeek.de/perl6/2014-10-12#i_9494778 http://irclog.perlgeek.de/perl6/2014-10-12#i_9494778