sub bits { glob join "", map "{0,1}", 1..$_[0] } say for bits(10); __END__ 0000000000 0000000001 0000000010 0000000011 0000000100 0000000101 ... 1111111011 1111111100 1111111101 1111111110 1111111111 #### sub bits { glob "{0,1}" x $_[0] }