Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Re: Re: Re: How to Sell Perl 6

by dragonchild (Archbishop)
on May 04, 2004 at 12:22 UTC ( #350305=note: print w/replies, xml ) Need Help??

in reply to Re: Re: How to Sell Perl 6
in thread How to Sell Perl 6

Although I disagree with his conclusion, I have to agree with his statement. Most of my code will break under Perl6, too. The Perl5 -> Perl6 ease-of-migration stuff is for the simpler uses of Perl. Once you start getting into symbolic references and symbol table manipulations and beyond-the-surface objects ... this isn't going to migrate. And, I know that if I'm doing that stuff, Abigail-II is definitely doing it.

Additionally, every single bit of XS is going to have to be rewritten. Granted, it gets to rewrite it in Parrot which is much nicer, but it's still a big task. Ponie may or may not help this part.

We are the carpenters and bricklayers of the Information Age.

Then there are Damian modules.... *sigh* ... that's not about being less-lazy -- that's about being on some really good drugs -- you know, there is no spoon. - flyingmoose

Replies are listed 'Best First'.
Re: Re: Re: Re: How to Sell Perl 6
by tilly (Archbishop) on May 04, 2004 at 18:03 UTC
    Rumor control.

    The point of Ponie is to provide an implementation of Perl on Parrot. Large documented pieces, like symbolic references, symbol table objects and so on are all going to be supported and will migrate just fine. If you're worried about that breaking, don't. And when you have Ponie, the Perl6 -> Perl5 compatibility layer will be, "just run it in Ponie".

    The problem comes with corner cases. For instance you lose timely destruction mechanics. My ReleaseAction is an extreme example of something that breaks. There will be inevitable subtle changes that break various JAPHs. What will change, where, nobody can predict. But if you're sticking to stuff (other than timely destruction mechanics) which is in Perl's test suite, then you should be fine.

    About XS, there as well you may be in luck. The Ponie effort has a plan to support XS out of the box. I trust that this will work. So if you're using XS stuff that only stuck to documented interfaces, then you should be fine. If you're using XS stuff that went mucking around with Perl internals, you're probably out of luck. However any major piece of Perl software, for instance DBI, will be considered a priority to support, and inevitably you will see fixes to one or both sides to get them to run.

    So you'll have problems timely destruction mechanics, some obscure and undocumented corners to the language, and smaller XS projects that didn't stick to the API they were told to. Otherwise Ponie should mostly Just Work.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://350305]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (10)
As of 2018-04-20 13:26 GMT
Find Nodes?
    Voting Booth?