Comments on Diagram for Perl 6's CPAN stack.TypePad2006-07-07T06:38:21Zaudreythttps://pugs.blogs.com/pugs/tag:typepad.com,2003:https://pugs.blogs.com/pugs/2006/07/diagram_for_per/comments/atom.xml/Audrey T commented on 'Diagram for Perl 6's CPAN stack.'tag:typepad.com,2003:6a00d83451e8fb69e200d834d3a99769e22006-07-08T18:50:06Z2007-08-20T02:18:55ZAudrey Thttp://pugs.blogs.com/Confused: Yes, but the thing is the multi dispatcher, although it's possible to be written out in pure Perl6, would...<p>Confused: Yes, but the thing is the multi dispatcher, although it's possible to be written out in pure Perl6, would still require dispatch chain inspection to work in any efficient manner.</p>
<p>In the simplest case it's just a "super;" call, which is present in Ruby/Python but _not_ Perl5 (though we emulate it there in Moose). However, even that call is missing in Parrot. :)</p>Confused commented on 'Diagram for Perl 6's CPAN stack.'tag:typepad.com,2003:6a00d83451e8fb69e200d834d3926869e22006-07-08T06:46:12Z2007-08-20T02:00:45ZConfusedRequiring the VM to have working exceptions and support reflection is understandable, but why burden the VM with dispatch chain...<p>Requiring the VM to have working exceptions and support reflection is understandable, but why burden the VM with dispatch chain inspection and multi-dispatch? Perl5 lacks these features, after all, and they must be emulated at the library level with appropriate data structures. Where do you draw the line as to what functionality is in the compiler/generated code/supporting library and the VM? Shouldn't the VM requirements be as modest as possible so that Perl6 can be easily retargetted?</p>Audrey T commented on 'Diagram for Perl 6's CPAN stack.'tag:typepad.com,2003:6a00d83451e8fb69e200d8349e222e53ef2006-07-08T02:58:32Z2007-08-20T02:12:05ZAudrey Thttp://pugs.blogs.com/Confused: It needs a sane exception handling mechanism, distinction between container and value objects, a method dispatch system that allows...<p>Confused: It needs a sane exception handling mechanism, distinction between container and value objects, a method dispatch system that allows inspection over the dispatch chain, a multi dispatch system that works with preferential resolution instead of Manhattan resolution, reflection API for the class system, to name a few.</p>
<p>It'll eventually get there (and I'm doing what I can to help), but currently the churn is still very, very high...</p>Confused commented on 'Diagram for Perl 6's CPAN stack.'tag:typepad.com,2003:6a00d83451e8fb69e200d8349e1d3553ef2006-07-08T01:58:29Z2007-08-20T00:16:36ZConfusedWhat are the main obstacles remaining in Parrot to have it supported as a first class Perl6 back end as...<p>What are the main obstacles remaining in Parrot to have it supported as a first class Perl6 back end as is Haskell? Would Neko be a better target for Perl6?</p>Bártházi András commented on 'Diagram for Perl 6's CPAN stack.'tag:typepad.com,2003:6a00d83451e8fb69e200d834d3758069e22006-07-07T20:40:20Z2007-08-20T02:03:07ZBártházi Andráshttp://barthazi.huAudrey: so as I know it means: Pugs now have more than one backends (runtimes). The planned was Parrot, the...<p>Audrey: so as I know it means: Pugs now have more than one backends (runtimes). The planned was Parrot, the first was Haskell and now, as I know, there are Parrot, Haskell, JavaScript and Perl 5. But that's all my knowledge - what are the state of these backends? Are they fast? Which is the best in speed, in knowledge? As I see, it would be a great idea to create a matrix about speed and knowledge for the non-lambda-camels :). As I just read your blog and sometimes looking around, I have no information about these questions, and I think somebody++ should clarify it.</p>Audrey T commented on 'Diagram for Perl 6's CPAN stack.'tag:typepad.com,2003:6a00d83451e8fb69e200d834d35e8769e22006-07-07T16:33:45Z2007-08-20T01:39:29ZAudrey Thttp://pugs.blogs.com/Ian: As CPAN modules, they are now pure perl; what we are doing is synchronizing Haskell-side modules with Perl5-side modules,...<p>Ian: As CPAN modules, they are now pure perl; what we are doing is synchronizing Haskell-side modules with Perl5-side modules, make them implement a common API and a common Perl 6 AST, so you can switch between two "Pugs" runtimes and get the same semantics.</p>
<p>So indeed, you do not need GHC installed to use any of it.</p>ian b commented on 'Diagram for Perl 6's CPAN stack.'tag:typepad.com,2003:6a00d83451e8fb69e200d834d35e5d69e22006-07-07T16:29:22Z2007-08-20T01:39:14Zian bIs Pugs::Compiler and Pugs::Runtime pure perl? I'm confused because I thought those involved some haskell, and you have them in...<p>Is Pugs::Compiler and Pugs::Runtime pure perl? </p>
<p>I'm confused because I thought those involved some haskell, and you have them in this diagram above the XS layer -- which means that they are actually pure perl...</p>rgs commented on 'Diagram for Perl 6's CPAN stack.'tag:typepad.com,2003:6a00d83451e8fb69e200d8349ddbfd53ef2006-07-07T08:20:00Z2007-08-19T23:45:09ZrgsI'd like to emphasize that I'm willing and ready to help with whatever needs to make the P5 core ready...<p>I'd like to emphasize that I'm willing and ready to help with whatever needs to make the P5 core ready for use as the basis of this stack. P5P waits for your desires and contributions!</p>