diff --git a/extra/sequences/deep/deep.factor b/extra/sequences/deep/deep.factor index 6e36878b78..c55647bbcb 100644 --- a/extra/sequences/deep/deep.factor +++ b/extra/sequences/deep/deep.factor @@ -5,11 +5,10 @@ IN: sequences.deep ! All traversal goes in postorder -GENERIC: branch? ( object -- ? ) -M: sequence branch? drop t ; -M: string branch? drop f ; -M: number branch? drop f ; -M: object branch? drop f ; +: branch? ( object -- ? ) + dup sequence? [ + dup string? swap number? or not + ] [ drop f ] if ; : deep-each ( obj quot -- ) [ call ] 2keep over branch?