in reply to XOR, AND or NAND'ing bitstrings.

use strict; use warnings; sub nand { my @o = reverse split //, $_[0]; my @l = reverse split //, $_[1]; push @l, 0 while @o > @l; return join '', reverse map { 0+!shift @o || 0+!$_} @l; } print nand('1101','10111');