Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^2: Measure twice, cut once

by tobyink (Abbot)
on Mar 24, 2012 at 13:38 UTC ( #961400=note: print w/ replies, xml ) Need Help??


in reply to Re: Measure twice, cut once
in thread Measure twice, cut once

The smart match operator (~~) is always available in 5.10 and above, whether you explicitly use 5.010 or not.

The features which an explicit use 5.010 enables are:

  • say
  • state
  • switch (i.e. the given, when and default keywords)

I agree with you that the releases since 5.10 have not been especially compelling feature-wise. Some of the features are nice, but they're not world-changing.

package My::Foo 1.00 { ... }

... is nicer syntax for starting a package, but it's not so awesome that I'm willing to drop compatibility with pre-5.12 Perl just to use it.

Auto-dereferencing hashrefs and arrayrefs for each, push, shift, etc saves me... what? Three characters max?

Which is not to say that p5p are wasting their time. There are no doubt other, less visible changes which are big wins, but I haven't seen anything to get massively excited about since 5.10.

I think perhaps 5.18 will be the next time we see something interesting added to the language, because part of the 5.16 development seems to have been about getting a better structure in place for building use 5.XXX-dependant features.

perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'


Comment on Re^2: Measure twice, cut once
Select or Download Code
Re^3: Measure twice, cut once
by BrowserUk (Pope) on Mar 24, 2012 at 14:34 UTC
    The smart match operator (~~) is always available in 5.10 and above, whether you explicitly use 5.010 or not.

    Fair enough. I don't recall exactly what it was that I was bitten by, but something caused me to revert.

    I think perhaps 5.18 will be the next time we see something interesting added to the language, because part of the 5.16 development seems to have been about getting a better structure in place for building use 5.XXX-dependant features.

    I am aware (and appreciative of) that a lot of the binary compatibility breaking changes in the recent releases have been to do with improving the internals structuring of the sources such that it: a) makes them easier to maintain; b) makes it easier to add new features going forward. Both of which are good things and involve considerable dedicated efforts by those doing the work. I applaud those changes.

    But it does feel like many of them could have been confined to the development builds -- whilst confining releases to minor versioned bug fixes -- until the internal changes could be rolled up into a single major release.

    But I'm not involved in the work, so my opinion doesn't (and shouldn't) count for much. And I do have the option of holding off from upgrading.

    So none of this is a complaint, nor even criticism. Just one man's view from the outside looking in.


    With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.

    The start of some sanity?

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (5)
As of 2014-10-01 11:31 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    What is your favourite meta-syntactic variable name?














    Results (9 votes), past polls