sub part(&@) { my($code, @list)=@_; my @ret=(); push @{$ret[&$code()]}, $_ for @list; return @ret; }