Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

(MeowChow) Re2: Funkyness with closures...

by MeowChow (Vicar)
on Sep 30, 2001 at 21:36 UTC ( [id://115746]=note: print w/replies, xml ) Need Help??


in reply to Re: Funkyness with closures...
in thread Funkyness with closures...

Stranger and stranger...
  
use strict; use warnings; { my $x = 'A'; sub f { sub { $x++ } } sub g { sub { $x++ } } } my $F=f(); my $G=g(); print $F->(),$G->(),"," for 1..4; ### RESULT ### 01,23,45,67,
So the $F and $G closures now share $x, albeit not the one that was originally instantiated!

It's also interesting that when the lexical scope is wrapped up inside of a BEGIN block, all these problems go away...

   MeowChow                                   
               s aamecha.s a..a\u$&owag.print

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others scrutinizing the Monastery: (1)
As of 2024-04-25 04:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found