Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re^2: Array slices: beyond the end/ Assigning an empty list to a Hash slice

by 7stud (Deacon)
on Mar 22, 2014 at 19:09 UTC ( [id://1079399]=note: print w/replies, xml ) Need Help??


in reply to Re: Array slices: beyond the end/ Assigning an empty list to a Hash slice
in thread Array slices: beyond the end/ Assigning an empty list to a Hash slice

Your question here seems to imply an assumption. This might be: "Why is indexing beyond the end of the list legal for a slice when it's illegal for an array?

Yes, I think I was confused by that because I did this:
use strict; use warnings; use 5.014; my @arr = (); if (exists $arr[0]) { say 'yes'; } else { say 'no'; } say $arr[0]; --output:-- no Use of uninitialized value in say at 1.pl line 15.
And the error convinced me that you can't index beyond the end of the array, but as you pointed out and as "Learning Perl" (6th) says on p. 45:

If the subscript indicates an element that would be beyond the end of the array, the corresponding value will be undef.

For comparison:

my @arr = (undef); if (exists $arr[0]) { say 'yes'; } else { say 'no'; } say $arr[0]; --output:-- yes Use of uninitialized value $arr[0] in say at 1.pl line 14.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1079399]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (1)
As of 2024-04-25 00:14 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found