Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister

Re: Musings on the future

by stvn (Monsignor)
on Sep 17, 2007 at 01:47 UTC ( #639312=note: print w/replies, xml ) Need Help??

in reply to Musings on the future

Remember, Perl 6 is an all volunteer effort and very few people (if any) are actually getting paid to hack on it. It will take as long as it takes, no more no less. In the meantime it is inspiring lots of activity in the Perl 5 world to help further modernize everyones favorite post-modern programming language.

You can start using any number of Perl 6 features in Perl 5 today if you want. Some of these things are more production ready than others, but here is a list to start with.

  • Production Ready
    • Moose - Perl 6-ish objects in Perl 5
    • Perl6::Junctions - A sane and stable implementation of Perl 6 Junctions
    • Class::C3 - Use the C3 mro (method resolution order) (which is the canonical mro in Perl 6)
    • Scalar::Defer - Lazy values (a feature of Perl 6)
  • Not Quite Production Ready
    • Smart Matching in Perl 5.9.5
    • given/when construct in Perl 5.9.5
    • Devel::BeginLift - finer grained control over when subs get executed (Perl 6 will have similar type features, though not exactly)
    • autobox - the ability to call methods on core type like ARRAY, SCALAR, HASH, CODE, etc
    • Moose::Autobox - Roles designed for use with autobox that provide the built-in methods (modeled heavily after the ones defined in the Perl 6 synopsis)
    • Perl6:: - there are a number of Perl 6 modules, some more finished than others, some more abandoned than others.

I am sure I missed some too, these are just the ones I know about and use.


Replies are listed 'Best First'.
Re^2: Musings on the future
by diotalevi (Canon) on Sep 17, 2007 at 04:29 UTC

    Scalar::Defer is not production ready because it is designed wrong. Nothing that blesses into 0 will ever be production ready.

    ⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

      I agree. It's a neat trick and highly entertaining, but much too magical for me to use in anything important.
Re^2: Musings on the future
by zshzn (Hermit) on Sep 17, 2007 at 04:30 UTC
    Thanks for all the links and references.

    I know that Perl 6 is a volunteer effort, and I am respectful and impressed by those working on it. And naturally I have looked at the Perl6:: modules. I know there is a lot to do now with Perl 6, including using it via PUGS!

    My ramblings are more about the level of completion or just generic confusion surrounding Perl 6 and associated projects.

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://639312]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (2)
As of 2022-06-27 04:42 GMT
Find Nodes?
    Voting Booth?
    My most frequent journeys are powered by:

    Results (86 votes). Check out past polls.