http://www.perlmonks.org?node_id=582399


in reply to Re: My 'perldar' tells me there is a 'better' solution for this list operation
in thread My 'perldar' tells me there is a 'better' solution for this list operation

it seems a couple of the responses used qw(Field1 Field2 Field3) as opposed to ("Field1","Field2","Field3"). What's the difference?

Short answer, there is no difference :).

Long answer, see perlop.

qw/STRING/
      Evaluates to a list of the words extracted out of
      STRING, using embedded whitespace as the word 
      delimiters.  It can be understood as being roughly
      equivalent to:

          split(' ', q/STRING/);

      the difference being that it generates a real list
      at compile time.  So this expression:

          qw(foo bar baz) 

      is semantically equivalent to the list:

          'foo', 'bar', 'baz'

      Some frequently seen examples:

          use POSIX qw( setlocale localeconv )
          @EXPORT = qw( foo bar baz );

-- Hofmator

Code written by Hofmator and posted on PerlMonks is public domain. It is provided as is with no warranties, express or implied, of any kind. Posted code may not have been tested. Use of posted code is at your own risk.

  • Comment on Re^2: My 'perldar' tells me there is a 'better' solution for this list operation