Re^2: Perl 6 Fundamentals
by vrk (Chaplain) on May 09, 2017 at 14:34 UTC
|
Perl 6 is no joke. For many years (2005-2015), I thought it would end up as vapourware or at least unimplementable, so I stopped following the project. But suddenly (or so it feels), there's a working compiler and one or two virtual machines that actually work. The language specification and the implementation are converging. Inline::Perl5 is genuinely cool and useful, even if neither it nor the compiler are "production quality". Now I feel the project will eventually succeed, even if it takes another 5-10 years to a full, optimised, mature implementation.
When it comes to books about Perl 6, the biggest difference to Perl 5 is that you can write a book based on the specification and it will remain valid and up to date for many years, even if the implementation changes. You can hardly say the same of Perl 5, which only has one implementation and no specification. I look forward to reading more Perl 6 books. I can't recommend it for production use at work, and I likely won't use it much in the next five years, but it contains so much that is new, interesting and Perl that I'll eventually make the switch. Just not yet.
| [reply] |
|
|
I'm with you, vrk, Perl6 is definitely starting to shine with promise. I'm waiting for them to finish work on the JVM, (java virtual machine) backend, and then see some useful modules arrive. In the spirit of "free as in beer", there is an open-source book at Perl_6_Programming. I would hope that a book like that would be improved, bit by bit, just like Perl6. :-)
| [reply] |
|
|
Thanks for this and below posts vrk,
they really sounds of something said because of your experience; not prejudice nor fanatism.
I always looked to Perl6 as something fashinating that I 've no time to explore: I'm a strictly perl only, and I need to still improve a lot at it.
Perl6 can be a door to perl future, we have not to close it.
L*
There are no rules, there are no thumbs..
Reinvent the wheel, then learn The Wheel; may be one day you reinvent one of THE WHEELS.
| [reply] [d/l] |
|
|
you can write a book based on the specification and it will remain valid and up to date for many years, even if the implementation changes. You can hardly say the same of Perl 5
Have you read Modern Perl or Ovid's Beginning Perl?
| [reply] |
|
|
Modern Perl is great. It's also updated every year or two, which shows that Perl 5 keeps evolving (a good thing) and that features are both added and removed from the language in almost every point release (see also: no fixed specification).
I haven't read Beginning Perl, but I did buy a copy of the 4th edition (2012) of the Camel Book recently. The difference to the 3rd edition (2000), i.e. between idiomatic Perl 5.6 and 5.14, is enormous. If there is ever a 5th edition, it will no doubt be as big a change from 5.14 -- who knows, maybe it will feel like Perl 6 at this rate.
| [reply] |
|
|
|
|
| [reply] |
|
|
| [reply] |
Re^2: Perl 6 Fundamentals
by Zoffix (Acolyte) on May 11, 2017 at 14:13 UTC
|
Oooph! I'm getting quoted so often, I think should start charging a fee! :)
I can certainly see why the stuff you quoted and especially the notice you mention may make it seem like we're changing stuff around willy-nilly. However, I think I can clarify some of the confusion.
We don't make changes that break 6.c Language Specification tests. Having personally read one of the preview versions of Perl 6 Fundamentals, I'd say it's a safe buy, especially since it's written by someone who's keeping themselves in the loop with Perl 6 development.
The breaking changes the notice you mention refers to are to routines that were not part of the language. They're either internal or Rakudo-only bits that we found some users using. So we published a notice telling people about the changes in those routines, now that they were either removed or standardized to be part of the language, which I think is preferable than simply letting that code break and blaming the users for using something that's not part of the language.
As for the bit you quoted off reddit, wouldn't you say that applies to any large project that got released less than a year and a half ago? New software has bugs and isn't thoroughly optimized. Some stuff is wrong and when it's made right, it may affect your code if you relied on the wrongness.
So on one hand, we could modify non-spec code any way we want and not tell anyone, blaming the users whose code breaks for using those routines. We could tell half-truths to people and say Perl 6 is magical and farts rainbows. Or... we could be realistic and acknowledge that there're still many performance improvements we can make and bugs to fix, and we can spend the time to address the userbase who use untested parts of bleed features.
I prefer the latter option.
Cheers,
ZZ
| [reply] |
Re^2: Perl 6 Fundamentals
by Your Mother (Archbishop) on May 09, 2017 at 14:56 UTC
|
Could you provide a link to the Reddit post? I did quoted Google searches for the quotes you provided and there were no results.
| [reply] |
|
|
| [reply] |