in reply to Re: Array to Hash
in thread Array to Hash

no. no map in void context please. That's what you have the backwards foreach for.
$item{$_} = 1 for @list;

Replies are listed 'Best First'.
Re: RE: Re: Array to Hash
by Sihal (Pilgrim) on Nov 19, 2002 at 17:17 UTC
    What is so bad about map in map in void context ? I mean no harm can be done, can it ?

      Just in case others Super Search for an answer to this question and follow merlyns node mentioned first in the result-set, here is the relevant excerpt of the perlfaq6

      Found in /usr/lib/perl5/5.8.0/pod/perlfaq6.pod
      What's wrong with using grep or map in a void context?

      The problem is that both grep and map build a return list, regardless of the context. This means you're making Perl go to the trouble of building a list that you then just throw away. If the list is large, you waste both time and space. If your intent is to iterate over the list then use a for loop for this purpose.

      regards,
      tomte


      Hlade's Law:

      If you have a difficult task, give it to a lazy person --
      they will find an easier way to do it.