Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re^5: Use Hash? Array? Still confused after all these years.

by exussum0 (Vicar)
on Jul 22, 2005 at 11:41 UTC ( #477185=note: print w/replies, xml ) Need Help??


in reply to Re^4: Use Hash? Array? Still confused after all these years.
in thread Use Hash? Array? Still confused after all these years.

Which non negative numbers aren't usable?

----
Give me strength for today.. I will not talk it away..
Just for a moment.. It will burn through the clouds.. and shine down on me.

  • Comment on Re^5: Use Hash? Array? Still confused after all these years.

Replies are listed 'Best First'.
Re^6: Use Hash? Array? Still confused after all these years.
by willyyam (Priest) on Jul 22, 2005 at 12:58 UTC

    Pi? 0.06? Rational numbers (negative or not) are not usable array indices.

      I hate to nitpick, because I agree that "non negative numbers" is certainly technically imprecise, and "non negative integers" is overly verbose (an entire extra word! *gasp*), compared to "whole numbers". (Incidentally, "counting numbers" doesn't include zero.) But, check this out:

      perl -Mstrict -lwe 'my @a = (0..20); print $a[$_] for 3.14159, 0.06, ( +75/9), (-75/9)' 3 0 8 13

      Perl seems to be doing an implicit 'int' on the index. (Anyone with better understanding of internals know where this happens? I tried creating a simple Tied class, and the FETCH func still sees a whole number.) This allows you to write $array[rand @array] rather than $array[int rand @array], for example.

      Sort of.
      $array[0.06] = 4;
      is fine with Perl. Just don't expect it to be different from $array[1/4]!

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (7)
As of 2021-01-22 09:19 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?