# yes, an associative array...but make it objectified my $pretend_object = bless({},"Pretend::Object"); # enter a block for whatever reason for (1..10) { # ok, since we decided to skip on creating methods accessible # from the object, let's create our accessor method here # note: it gets recreated every loop my $func = _setter_getter_maker($pretend_object,'attrib'); $func->($_); } # stupid accessor fell out of scope :-/ my $func = _setter_getter_maker($pretend_object,'attrib'); print $func->();