#!/path/to/perl
my $X = \$X;
printf STDOUT "Starting with VAR %lx and REF %lx \n",
$X, \$X;
if ($X == \$X) {
printf STDOUT "uh oh, they are deemed equal\n";
} else {
printf STDOUT "ah, good, they are observed to differ\n";
}
# end
####
#!/path/to/perl
my $X = \$X;
my $Y = \$Y;
if ( \$X == \$Y ) {
printf STDOUT "disturbing declaration of equality! \n";
printf STDOUT "Refs: %s \t %s \n", \$X, \$Y;
printf STDOUT "Vals: %lx \t %lx \n", $X, $Y;
printf STDOUT "SOps: sum %lx \t dif %lx \n", $X + $Y, $X - $Y;
printf STDOUT "incs: %lx \t +512=%lx \t +1024=%lx \n", $X, $X + 512, $X + 1024;
} else {
printf STDOUT "all is quiet and peaceful, \n";
printf STDOUT "%lx and %lx are recognized to differ by %lx \n",
\$X, \$Y, \$X - \$Y;
}
# end
####
all is quiet and peaceful,
100231cc0 and 100231ce0 are recognized to differ by ffffffffffffffe0
####
disturbing declaration of equality!
Refs: SCALAR(0x800000010002a9b0) SCALAR(0x800000010002a9d0)
Vals: 800000010002a9f0 800000010002aa30
SOps: sum 200055000 dif 0
incs: 800000010002a9f0 +512=800000010002a800 +1024=800000010002b000