Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.
 
PerlMonks  

Re: Creating dynamic variables

by tobyink (Canon)
on Jan 03, 2013 at 15:06 UTC ( [id://1011467]=note: print w/replies, xml ) Need Help??


in reply to Creating dynamic variables

This is about the closest I could get...

use strict; use warnings; BEGIN { package JIT; # Just In Time evaluation $INC{'JIT.pm'} = __FILE__; use base 'Exporter'; our @EXPORT = 'jit'; sub jit (&) { bless $_[0] } use overload q[""] => 'evaluate', q[0+] => 'evaluate', q[bool] => 'evaluate', fallback => 1; sub evaluate { $_[0]->() } }; use JIT; my $foo = "hello"; my $y; # needs to be declared, but we haven't assigned a value to it +yet. my $x = jit { "$foo".$y }; # $y is not yet defined. $y = "world"; # now define $y print $x;
perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others contemplating the Monastery: (5)
As of 2024-04-26 08:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found