use Language::Functional qw(foldr); print foldr { $_[0] + $_[1] } 0, [2,2];