Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re^3: $array[ 'Infinity' ]

by ikegami (Pope)
on Dec 16, 2007 at 23:38 UTC ( #657344=note: print w/ replies, xml ) Need Help??


in reply to Re^2: $array[ 'Infinity' ]
in thread $array[ 'Infinity' ]

Is Perl suppose to support Infinity as a number? If so, it has two bugs: it doesn't work, and it's not in the docs. It's not in the 5.10.0 docs either.

It's not recognized by the parser:

>perl -e "use Devel::Peek; $x="Infinity"; Dump($x); $x=Infinity; Dump( +$x)" SV = PV(0x22612c) at 0x226000 REFCNT = 1 FLAGS = (POK,pPOK) PV = 0x182cb54 "Infinity"\0 CUR = 8 LEN = 12 SV = PV(0x22612c) at 0x226000 REFCNT = 1 FLAGS = (POK,pPOK) PV = 0x182cb54 "Infinity"\0 CUR = 8 LEN = 12 >perl -e "use Devel::Peek; $x="-Infinity"; Dump($x); $x=-Infinity; Dum +p($x)" SV = PV(0x226150) at 0x226000 REFCNT = 1 FLAGS = (POK,pPOK) PV = 0x1835404 "-Infinity"\0 CUR = 9 LEN = 12 SV = PV(0x226150) at 0x226000 REFCNT = 1 FLAGS = (POK,pPOK) PV = 0x1835404 "-Infinity"\0 CUR = 9 LEN = 12

I also get different output from the commands you issued.

>perl -le "print 0+(-Infinity)" 0 >perl -le "print 0+('Infinity')" 0
>perl -v This is perl, v5.8.8 built for MSWin32-x86-multi-thread (with 25 registered patches, see perl -V for more detail) Copyright 1987-2006, Larry Wall Binary build 817 [257965] provided by ActiveState http://www.ActiveSta +te.com Built Mar 20 2006 17:54:25 ...

Has this been discussed on P5P?


Comment on Re^3: $array[ 'Infinity' ]
Select or Download Code
Re^4: $array[ 'Infinity' ]
by blokhead (Monsignor) on Dec 16, 2007 at 23:45 UTC
    I have no idea what it's supposed to do. I couldn't find anything in my local docs about it either (nor about NaN, which has similar behavior on my build).

    Maybe it depends on the local floating-point arithmetic library?

    Searching came up with: this perl5.porters msg, and also FMTYEWTK about is_numeric, which seems to suggest that perl calls to the atof() library function. Finally, bignum suggests that "Perl doesn't always handle bareword NaN/inf properly."

    blokhead

Re^4: $array[ 'Infinity' ]
by ysth (Canon) on Dec 17, 2007 at 01:38 UTC

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (8)
As of 2014-11-22 10:54 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred Perl binaries come from:














    Results (121 votes), past polls