use POSIX qw(locale_h); setlocale(LC_ALL, "DNA"); use locale; my @twos=(AA..TT); #with all above working @twos would be AA AC AG AN AT CA CC CG etc.