sub t_d_o { my $s = shift; my $obj = shift; return 1 if $s eq $obj; # String compare on objects ok? foreach my $dependency ($s->dependencies) { return 1 if $dependency->t_d_o($obj); # Inf. loop on cycles. Whee. } return undef; }