http://qs321.pair.com?node_id=11138976


in reply to Re: Why Perl Docs examples do not use strict and warnings often (updated)
in thread Why Perl Docs examples do not use strict and warnings often

I love Perl and have zero interest in trolling my beloved language.
  • Comment on Re^2: Why Perl Docs examples do not use strict and warnings often

Replies are listed 'Best First'.
Re^3: Why Perl Docs examples do not use strict and warnings often
by haukex (Archbishop) on Nov 20, 2021 at 14:24 UTC
    I love Perl and have zero interest in trolling my beloved language.

    Anonymous posts with complaints and no suggestions to improve things tend to give that impression, unfortunately.

      Please try to take it easier. :)

      We had many trolls recently, but IMHO this question regarding perldsc is legit.

      For example:

      Count how many times my is missing here

      Declaration of an ARRAY OF ARRAYS @AoA = ( [ "fred", "barney" ], [ "george", "jane", "elroy" ], [ "homer", "marge", "bart" ], ); Generation of an ARRAY OF ARRAYS # reading from file while ( <> ) { push @AoA, [ split ]; } # calling a function for $i ( 1 .. 10 ) { $AoA[$i] = [ somefunc($i) ]; } # using temp vars for $i ( 1 .. 10 ) { @tmp = somefunc($i); $AoA[$i] = [ @tmp ]; } # add to an existing row push $AoA[0]->@*, "wilma", "betty"; Access and Printing of an ARRAY OF ARRAYS # one element $AoA[0][0] = "Fred"; # another element $AoA[1][1] =~ s/(\w)/\u$1/; # print the whole thing with refs for $aref ( @AoA ) { print "\t [ @$aref ],\n"; } # print the whole thing with indices for $i ( 0 .. $#AoA ) { print "\t [ $AoA[$i]->@* ],\n"; } # print the whole thing one at a time for $i ( 0 .. $#AoA ) { for $j ( 0 .. $AoA[$i]->$#* ) { print "elem at ($i, $j) is $AoA[$i][$j]\n"; } }

      > > > Many of the examples also run fine in the absence of strict and warnings.

      And they still would with my declarations for all Perl 5 versions, even without 'use strict'.

      update

      But they would fail for versions not supporting ->@* and ->#* , which makes the backwards compatibility argument even more dubious.

      Cheers Rolf
      (addicted to the Perl Programming Language :)
      Wikisyntax for the Monastery