Los conjuntos son representados mediante listas. Dado que el conjunto vacío es un subconjunto de cualquier conjunto y que el conjunto vacío es representado mediante la lista vacía no podemos usar como criterio de finalización el retorno de la lista vacía.
lhp@nereida:~/Lperl/src$ sed -ne '20,$p' allsubsets.pl | cat -n
1 my @S;
2 FOREVER: {
3 @S = $s->();
4
5 local $" = ', ';
6 print "(@S)\n";
7
8 last if (@S == @ARGV);
9
10 redo FOREVER;
11 }
Casiano Rodríguez León
