6 ms·
Space Invaders in Perl 6
- broodbucket 12y agoAssuming this is OP's project, can you explain what the JVM bug is?
- tadzik_ 12y agoNot OP, but the author here: the JVM bug is reported at https://github.com/jnthn/zavolaj/issues/38 https://github.com/jnthn/zavolaj/issues/38. I could workaround it, but I dind't (yet) bother to do it. So, not really a JVM bug, but rather a bug in Rakudo for the JVM. I'd fix the readme, thanks.
- hemanthkumar 12y agoHello
- peteretep 12y ago> Parrot can run this, but awfully slow and JVM has a bug > that makes it impossible to run the game. For those unfamiliar, Perl 6 can now run on several backends: the JVM, the CLR (.NET/Mono), and a couple that have been purpose built, MoarVM (http://moarvm.com/ http://moarvm.com/) and Parrot. Perl 6 isn't finished, but it's much further ahead than one might think ... http://rakudo.org/ http://rakudo.org/
- microtherion 12y agoBullshit. Top article there right now is "A useful, usable, “early adopter” distribution of Perl 6". Sounds lovely, doesn't it? The problem is that these "early adopter" distributions of Perl 6 have been released regularly since mid-2010. The first "early adopter" Perl 6 book was released in 2003. Generations of Perl 6 hackers have joined the project, re-written a key piece of the infrastructure, broken a bunch of APIs, and left again. If it hasn't happened already, we will soon see the CHILDREN of Perl 6 hackers born during Perl 6 development start doing half-baked infrastructure rewrites. I don't expect the project to ever converge on a stable release. Early adopt it all you want, but don't claim it's "further ahead than one might think".
- tadzik_ 12y agoThankfully or not, your comment is so full of bullshit, FUD and exaggerations that it's not going to fool anybody. Try being less poetic and more to the point next time.
- microtherion 12y agoMy comment contains numerous easily verified facts. I note the utter absence of any attempt on your part to provide evidence that contradicts anything I said.
- Pacabel 12y agoHow do you figure that? That comment that you replied to matches reality very well. Perl 6 is nearly 15 years old now. There have been many attempts to implement it during this time, and none of them have really been usable like Perl 5's implementation is. I can recall hearing about Rakudo Star, Pugs, Niecza, v6.pm, Yapsi, and Sprixel. There are probably others that I've forgotten about. And that's ignoring NPQ, Perlesque, Parrot and all of the other intermediate implementations and runtimes that have been dabbled with. There has been a lot of wheel-spinning when it comes to getting Perl 6 implemented. It's like they've tried everything except the proven approach of just writing a plain interpreter using C, like we've seen work well for earlier versions of Perl, Ruby, Python, and so many other languages.
- raiph 12y ago> The problem is that these "early adopter" distributions of Perl 6 have been released regularly since mid-2010. I agree. It's taken 4 years to get to this latest Star, on top of P6 being 10 years old when the first Star came out. It's all way slower than most (all?) folk expected. This has impacted early adopters, perception/marketing of P6, perception/marketing of P5, and attracting contribution to P6. > Generations of Perl 6 hackers have joined the project, re-written a key piece of the infrastructure, broken a bunch of APIs, and left again. There's definitely been a lot of churn. However, if you focus on the P6 projects that still matter today (eg Rakudo, NQP, the test infrastructure, MoarVM, p6doc, the modules infrastructure) then you find activity that doesn't -- and never did -- match your arrive-rewrite-break-leave pattern. > If it hasn't happened already, we will soon see the CHILDREN of Perl 6 hackers born during Perl 6 development start doing half-baked infrastructure rewrites. The projects that still matter today don't allow new devs to be unduly disruptive. (Getting a commit bit to the most important bit, Rakudo, requires evidence of competence followed by signing and submitting a formal application.) > Early adopt it all you want, but don't claim it's "further ahead than one might think". It sure still isn't ready for most use cases. But have you given a recent release (especially the latest Rakudo Star) a serious look? --- (Edit: Removed the opening sentence "No. " before "The projects that still matter today don't allow new devs to be unduly disruptive." because you can't stop volunteers doing whatever they want.)
- wdr1 12y ago> Perl 6 isn't finished, but it's much further ahead than one might think ... Given I was there when Orwant threw his mug, I thought it would be finished. So the two statements you made seem incongruent to me.
- raiph 12y agoYou mentioned the CLR and that Parrot was purpose built. That leads me to write the following: There's only one P6 compiler relevant to most folk: Rakudo.[1] Rakudo doesn't have a CLR backend.[2] Parrot was supposed to be purpose built for the P6 project which in turn was supposed to be implementing Larry's specification. In practice Parrot grew its own purpose which ended up increasingly conflicting with Rakudo's to the point of irretrievable breakdown in 2009 (even if that wasn't obvious at the time). In contrast, MoarVM is purpose built for NQP and thus Rakudo and thus P6.[3] ---- [1] Rakudo was started by Patrick Michaud, the Perl 6 project manager, in 2004. It was always supposed to produce a reference P6 compiler implementation. All other compilers, including Pugs and Niecza, were projects started by enthusiastic individuals without a mandate to produce an end result. These latter have all ended up stalling far short of completion. [2] Rakudo does not run on the CLR. jnthn, the leading P6 dev who ported Rakudo to JVM and MoarVM, prototyped 6model (a key piece of any port of Rakudo) on CLR, and teaches C# for a living, has suggested that a port to CLR will be just a SMOP. But he has also made it clear he's not planning on doing the port himself. [3] Parrot is a very poor performer as an NQP/Rakudo backend (and is falling further behind as NQP and Rakudo evolve and Parrot fails to keep up). In addition to speed and RAM issues, if you want to use P6's concurrency features today, you must use either the JVM or MoarVM backend.
- dragonwriter 12y ago> Perl 6 isn't finished, but it's much further ahead than one might think ... Stable releases of Perl 6 and Gnu Hurd -- like commercial fusion power -- are permanently just around the corner...