in reply to style guidance

GrandFather's way is the best way. I had done it like:

use strict; use warnings; use 5.010; sub do_stuff1 { my $_ = shift @_; chomp $_; say; }
Update: added "my" to localize $_

Replies are listed 'Best First'.
Re^2: style guidance
by moritz (Cardinal) on Nov 08, 2009 at 12:26 UTC
    Or even
    use strict; use warnings; use 5.010; sub do_stuff1 { given($_[0]) { chomp; say; } }
    Perl 6 - links to (nearly) everything that is Perl 6.
      What, if anything, is gained by inserting a control statement (given) here in a context where it shouldn't ever affect the program flow? Are you just showing another way to do it or is there some subtlety to given which I have failed to grok?

        It's "just" another way to do it.

        What's the point of writing anything you write one way, and not another way?

        given is a syntactically nice way to to assign to my $_, which I happen to like. I don't see why it has to be connected to control flow. (Which is also the reason why the given/when construct is not spelled select/case in Perl: both given and when can be used independently).

        The strength of the topic variable $_ is that you can use it without writing $_ explicitly. given takes this one step further and makes the assignment also implicit.

        I also happen to like given because in Perl 6 you can call any method doit on $_ by writing .doit, the method doesn't have to be special for that in any way.

        So when you write lots of method calls on the same object, you can save a typing this way:

        # Perl 6 code here given $svg-canvas { .rect: x => 5, y => 5, height => 90, width => 190; .circle: cx => 100, cy => 50, r => 20, style => 'fill: black'; .text: 'Some caption', x => 20, y => 15; # etc. }
        Perl 6 - links to (nearly) everything that is Perl 6.