Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re: Brain Teaser

by tachyon (Chancellor)
on Jun 10, 2001 at 23:55 UTC ( [id://87347]=note: print w/replies, xml ) Need Help??


in reply to Brain Teaser

Excellent teaser. It parses because it is legal perl syntax of course! In this context it means print a reference to a reference to the return value of m// divided by a reference to a reference to a reference to the return value of m//. Wow that's a mouthful. In code form:

print //; # prints 1, scalar return val of match null in $_ (alw +ays true) print \//; # SCALAR(0x....) print \\//; # ditto print \\\//; # ditto print \\\\//; # ditto etc... # thus what you are saying is divide the scalar value # of one memory reference by another print \\// / \\\// ref div ref

It does not evaluate to 0 however as you imply. I get 0.999998046573592 on Win32 as we are dividing two closely allied memory addresses by each other. The first one evaled logically gets the smaller memory address (stack theory) so the result should always be a number just less than 1 - the bigger the memory you have (and the closer to out of memory you are) the closer to one it will be. You can demonstrate my theory with this snippet

$a = \1; # first ref in lower mem $b = \1; # second ref in slightly higher mem print $b/$a; # prints 1.00000684833673

tachyon

Replies are listed 'Best First'.
Re: Re: Brain Teaser
by srawls (Friar) on Jun 11, 2001 at 00:21 UTC
    It does not evaluate to 0 however as you imply

    That is true; I simply made a mistake when I posted--I meant to say that it evaluates to 0 in integer cotext as in $a[//\\\///\\]. Good explanation though, and sorry about the slip : )

    The 15 year old, freshman programmer,
    Stephen Rawls

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others having an uproarious good time at the Monastery: (3)
As of 2024-04-19 21:45 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found