foreach (@probExpr) { print "$_\n"; #%distri{$_}=(); %distri{$_}=[]; } #### &hashOfArraysRef(\$distri{$probExpr[0]}); #### $disti{$probExpr[0]} = function_that_returns_anonymous_array(); #### $disti{$probExpr[0]} = function_that_returns_anonymous_array($probExpr[0]); #### $disti{$_} = function_that_returns_anonymous_array($_) for @probExpr;