$ perl -MData::Dump -e '$a="abc";for(1..6){$a=~m/(.|$)/g; dd \@-,\@+}' ([0, 0], [1, 1]) ([1, 1], [2, 2]) ([2, 2], [3, 3]) ([3, 3], [3, 3]) ([3], [3, 3]) ([0, 0], [1, 1])