coolmichael has asked for the wisdom of the Perl Monks concerning the following question:
I noticed this a while ago, but didn't really think that much of it at the time. The value, "0E0" evaluates numerically as zero, but is also true. Is this an example of "deep magick" in Perl? I got caught up on this while using the dbi to run some queries. It seems like the whole point (from the docs) was to create a numerical zero, which evaluates to true, so that you can return true (as in a query was successful, didn't cause any errors) but doesn't return any results.
Can anyone confirm or deny this?
on a slightly related note, does anyone know why 0E0 + 1 doesn't stay in scientific notation? It seems counter intuitive to me, but my intuition has been doing funny things lately.
#!perl -w use strict; my $oero = "0E0"; my $zero = "0"; print "oero ($oero) true\n" if($oero); print "oero ($oero) defined\n" if(defined($oero)); print "zero ($zero) true\n" if($zero); print "zero ($zero) defined\n" if(defined($zero)); print "zero eq oero\n" if ($oero eq $zero); print "zero == oero\n" if ($oero == $zero); print "oero+1: ", $oero+1, "\n"; print "oero+zero: ", $oero+$zero, "\n"; print "oero+oero: ", $oero-$oero, "\n"; OUTPUT: oero (0E0) true oero (0E0) defined zero (0) defined zero == oero oero+1: 1 oero+zero: 0 oero+oero: 0
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: OEO, a zero that evaluates to true?
by blakem (Monsignor) on Jan 08, 2002 at 13:23 UTC | |
Re: OEO, a zero that evaluates to true?
by particle (Vicar) on Jan 08, 2002 at 18:17 UTC | |
Re: OEO, a zero that evaluates to true?
by princepawn (Parson) on Jan 08, 2002 at 13:51 UTC | |
Re: OEO, a zero that evaluates to true?
by n3dst4 (Scribe) on Jan 08, 2002 at 21:40 UTC |
Back to
Seekers of Perl Wisdom