in reply to Need advice in for perl use as awk replacement

Thank you to all monks for the help provided!

With your help I have identified the problem which actually was me trying to store away the captured groups into an aray $m instead of @m. Th eonly thing I do not get yet is why perl is not complaining with an error regarding a statement like "$m=($1,$2,$3,$4,$5,$6,$7)", What does this mean to perl if $ is used instead of @ for m ?

Many thanks also for all indirect answers and informational hints like the deparser, and others. These did extend my horizont and pointed me to what to investigate next (like regex modifiers, etc...)

One other question, is perldoc officially available somewhere in PDF ? Wikipedia claims that the perldoc site would have links for PDF download but I could not find these. All I could find (right now) is a PDF with the complete doc of perl 5.8.5 on perl.mines-albi.fr

Many thanks,
Gaston

  • Comment on Re: Need advice in for perl use as awk replacement

Replies are listed 'Best First'.
Re^2: Need advice in for perl use as awk replacement
by AnomalousMonk (Bishop) on Sep 22, 2020 at 06:37 UTC
    ... why perl is not complaining with an error regarding a statement like "$m=($1,$2,$3,$4,$5,$6,$7)",

    The following set of statements are syntactically correct:

    Win8 Strawberry 5.8.9.5 (32) Mon 09/21/2020 19:49:29 C:\@Work\Perl\monks >perl use strict; use warnings; my $foo = 42; my $bar = 137; my $m; $m = (1, 2, 3, $foo, 5, 6, $bar); Useless use of a constant in void context at - line 8. Useless use of a constant in void context at - line 8. Useless use of private variable in void context at - line 8. Useless use of a constant in void context at - line 8. Useless use of a constant in void context at - line 8. print $m; __END__ 137
    (1, 2, 3, $foo, 5, 6, $bar) is a list. Evaluating a list in scalar context (which is imposed by assignment to the scalar $m) causes the evaluation of every expression in the list, with only the result of the evaluation of the last item ($bar in this case) being returned. All other results are thrown away, which is why you see all the "Useless use of..." warnings — not errors! See the article Context tutorial in the Monastery's Tutorials section.


    Give a man a fish:  <%-{-{-{-<

Re^2: Need advice in for perl use as awk replacement
by karlgoethebier (Abbot) on Sep 23, 2020 at 06:34 UTC
    «...perldoc officially available somewhere in PDF...»

    You may take a look at pod2pdf and pod2latex.

    «The Crux of the Biscuit is the Apostrophe»

    perl -MCrypt::CBC -E 'say Crypt::CBC->new(-key=>'kgb',-cipher=>"Blowfish")->decrypt_hex($ENV{KARL});'Help