in reply to compute paths in Pascal's triangle (aka Tartaglia's one)

Fun little regex exercise :)

#!/usr/bin/perl # http://perlmonks.org/?node_id=1211497 use strict; use warnings; my $triangle = <<END; 0-0 1-0 1-1 2-0 2-1 2-2 3-0 3-1 3-2 3-3 4-0 4-1 4-2 4-3 4-4 5-0 5-1 5-2 5-3 5-4 5-5 END $^R = '3-1'; # clicked node "@{[ reverse split /\n/, $triangle ]}" =~ / $^R (?: .* ((??{ my ($row, $col) = split m{\D}, $^R; $row ? ($row - 1) . '-[' . ($col > 0 && $col - 1) . "$col]" : '( +*F)' })) (?{$1 eq '0-0' and print "$1 $^R\n"; "$1 $^R"}) )+ (*F) /x;