in reply to Closures and Statistics

The example code you gave isn't a closure but an anonymous function. A closure is when a function contains some form of lexical state within it e.g
{ open(my $fh, "somefile.txt") or die("ack - $!"); sub readfile { return <$fh>; } } print while readfile();
So readfile holds $fh which can't be seen anywhere else in the program as it has fallen out of scope due to the enclosing bare block. For an effective example of closures see tilly's Why I like functional programming. Also be cautious of the special variables $a and $b as they are used by sort() and are package variables (so you're safe in this case as they're lexical).
HTH

_________
broquaint