What else could be considered passing an array, which is not possible in perl???

You've equated passing with sending (push @a), but that's only half it. For something to be passed successfully, it must also be received.

Many languages (including C++, various BASIC derivatives and Java) allow arguments that are arrays. Perl isn't one of them. One must usually go through the extra step of getting a reference in the caller, and one always must go through the extra step of dereferencing in the callee.

The closest you can get to "passing an array" in perl is to pass the arr_ref. Thats my interpretation of passing, (and not only mine)

It seems I have to repeat myself. I'm not disputing that foo(\@a) can also be considered passing an array, but that's off topic.

Whatever you want to call it, $_[0] will never be an array. Therefore, \$_[0] will never be a reference to an array.

My point was that while you were saying that references to arrays do one thing and references to scalars do another, the code you were using only dealt with references to scalars.

What's your point? I don't see how any of what you've said concerning passing arrays relates to the subject at hand.


In reply to Re^7: Reference of constants and literals by ikegami
in thread Reference of constants and literals by LanX

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.