#!/usr/bin/perl use strict; # https://perlmonks.org/?node_id=11165274 use warnings; print binary2decimal( 1 . 0 x 8192 ), "\n"; sub binary2decimal { my $n = 0; $n = (0 . $n =~ tr/1-9/246802468/r | $n =~ tr/1-9/00001/r . $_) =~ s/^0+(?=.)//r for split //, shift; return $n; }