On Fri, Jul 01, 2005 at 07:11:26AM +0000, Smylers wrote: > > To me 'deeply' implies recursing as deep as the data structure goes, not > that there's a special rule for the top-level that's treated differently > from the others.
Nobody is saying is_deeply shouldn't be deep. If I understand correctly, is_deeply($a,$b) on a deep structure can still return ok if $a and $b have no references in common; it's not the specific value of the references that needs to match, it's the patterns of which parts within each of $a and $b have duplicate references, and whether those patterns match between the two. Another way of looking at it is that Schwern is saying is_deeply returns ok if the leaf values and overall structures match so long as no changes are made, while Yves is saying is_deeply should return not ok if the same change made to both ends up with different leaf values or overall structure.