Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^7: Not understanding 2 sentences in perldoc

by LanX (Saint)
on Jul 29, 2020 at 22:16 UTC ( [id://11120033]=note: print w/replies, xml ) Need Help??


in reply to Re^6: Not understanding 2 sentences in perldoc
in thread Not understanding 2 sentences in perldoc

"void context" means it returns nothing (or doesn't need to return anything)

see perlglossary

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

  • Comment on Re^7: Not understanding 2 sentences in perldoc

Replies are listed 'Best First'.
Re^8: Not understanding 2 sentences in perldoc
by zapdos (Sexton) on Jul 29, 2020 at 22:30 UTC
    I see. But I want to know why in my ($x, $y, $z) = qw( 1 2 3 ); it's returning the lvalues in list context and why in ( $x, $y, $z ) = qw( a b c ); it's returning nothing?

    And in the expression (my ($x, $y, $z) = qw( 1 2 3 )) = qw( a b c ); it's returning nothing as well?

      c:\@Work\Perl\monks>perl -wMstrict -le "my ($x, $y, $z); ;; ($x, $y, $z) = qw( 1 2 3 ); print qq{$x, $y, $z}; ;; (($x, $y, $z) = qw( 1 2 3 )) = qw( a b c ); print qq{$x, $y, $z}; ;; ((($x, $y, $z) = qw( 1 2 3 )) = qw( a b c )) = qw(foo bar baz); print qq{$x, $y, $z}; " 1, 2, 3 a, b, c foo, bar, baz
      The expression  ($x, $y, $z) = ... evaluates to a list of assignable values, i.e., lvalues.
      The expression  ($x, $y, $z) = RHS evaluates to the list of assignable values, i.e., lvalues, $x, $y, $z.

      And likewise with

      c:\@Work\Perl\monks>perl -wMstrict -le "my ($x, $y, $z) = qw( 1 2 3 ); print qq{$x, $y, $z}; ;; (my ($u, $v, $w) = qw( 1 2 3 )) = qw( a b c ); print qq{$u, $v, $w}; ;; ((my ($r, $s, $t) = qw( 1 2 3 )) = qw( a b c )) = qw(foo bar baz); print qq{$r, $s, $t}; " 1, 2, 3 a, b, c foo, bar, baz


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

        Arigato gozaimasu ^^

      • context

        The surroundings or environment. The context given by the surrounding code determines what kind of data a particular expression is expected to return.

      • void context

        A form of scalar context in which an expression is not expected to return any value at all and is evaluated for its side effects alone.

      • side effects

        Something extra that happens when you evaluate an expression. Nowadays it can refer to almost anything. For example, evaluating a simple assignment statement typically has the “side effect” of assigning a value to a variable. ...

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

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (2)
As of 2024-04-26 00:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found