But you can never use hash-specific operations on an array, or vice-versa.

*shrug* Some things are legal, some are not: it depends on whether the compiler autodetects the type, and issues a warning, or autodetects the type, and comes up with a conversion or a default value, or the function does something different when called with different data types.

keys(@x) is illegal. But length(@x) is legal, if largely pointless, as is length(%x). delete($x10) is a very different operation, under the hood, than delete($x{10}), but both work fine.

You can freely perform int-specific or string-specific operations on any scalar variable.

There's an implict scalar representation for both arrays and hashes, so you can freely perform integer or string specific operations on arrays and hashes, too.

$x = @x+15 is legal Perl. So is "$x = %x + 5" (althought it will issue warnings).

--
Ytrew


In reply to Re^2: Perl 6: Static/Dynamic Strong/Weak Type Systems by Anonymous Monk
in thread Perl 6: Static/Dynamic Strong/Weak Type Systems by tomazos

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.