Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re^7: PSGI, Plack, Twiggy, AnyEvent and SockJS... I need help

by Corion (Patriarch)
on Apr 09, 2014 at 17:27 UTC ( [id://1081697]=note: print w/replies, xml ) Need Help??


in reply to Re^6: PSGI, Plack, Twiggy, AnyEvent and SockJS... I need help
in thread PSGI, Plack, Twiggy, AnyEvent and SockJS... I need help

Now is the moment you want to read about "closures" in Perl. That is why I told you about "mentioning" $w in the subroutine or making $w a global variable.

Replies are listed 'Best First'.
Re^8: PSGI, Plack, Twiggy, AnyEvent and SockJS... I need help
by xtpu2 (Acolyte) on Apr 09, 2014 at 18:56 UTC

    Interesting! I didn't quite understand what you meant about "mentioning" the variable first time around. Just now, I replaced undef $w if (0); with $w; and other than a warning about Useless use of private variable in void context, it worked fine. Is there a best practice for how to "mention" variables in this kind of context?

    For now, off to read about closures.

    Edited to add after reading about closures: So basically, the reason I want to mention the variable $w within the callback subroutine is so that the variable becomes part of the lexical scope of the closure? I'm not sure if that's the correct terminology... But basically, unless the variable is somehow being used within the subroutine, it will be destroyed once all the callbacks and event handlers have been set up?

      Exactly - once the value goes out of scope, it gets released. You want to prevent this and release all references to the value when you want to stop the timer (if ever).

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others exploiting the Monastery: (2)
As of 2024-04-19 19:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found