in reply to Re^3: perl equiv to cmd start
in thread perl equiv to cmd start

Hi soonix,

the qq function

I know I'm probably being overly pedantic, but I AFAIK qq and related (q, qw, qx, etc.) aren't functions, they're operators. For example, I can't replace the parens around function arguments with other characters, as I can in qx# echo foo #. I also can't call a function with a syntax like foo(a b c) as I can with qw(a b c). (In fact, for a while now I've explicitly been avoiding parens on qw and friends to disambiguate.)

Regards,
-- Hauke D

Replies are listed 'Best First'.
Re: qq "function" or operator
by soonix (Chancellor) on Jan 18, 2017 at 15:32 UTC

    Yes, I hesitated to call them functions, but as they (qq, etcetera) are listed in perlfunc, I did ;-)

      They are also listed in perlop and are operators since they have a precedence and special parsing at compile time.

      The confusion stems from Perl's DWIM approach of redundant documentation.

      from perlfunc#Perl-Functions-by-Category

      Here are Perl's functions (including things that look like functions , like some keywords and named operators )

      Cheers Rolf
      (addicted to the Perl Programming Language and ☆☆☆☆ :)
      Je suis Charlie!