use List::Util qw[ sum ]; $N = 10; print sum map{ sum map{ sum map{ sum map{ sum map{ sum 0 .. $_ } 0 .. $_ } 0 .. $_ } 0 .. $_ } 0 .. $_ } 0 .. $N;; 11440 $N = 20; print sum map{ sum map{ sum map{ sum map{ sum map{ sum 0 .. $_ } 0 .. $_ } 0 .. $_ } 0 .. $_ } 0 .. $_ } 0 .. $N;; 657800