Open twhitehead opened 8 years ago
The document says that prune is equivalent to ignore >> norecurse, but I don't see how this can be.
prune
ignore >> norecurse
In more detail: the (expanded) definitions of ignore, norecurse, and prune are
ignore
norecurse
ignore = mzero ignore = CondT $ return recurse' ignore = CondT $ return (Nothing, Continue) norecurse = CondT $ return (Just (), Stop) prune = CondT $ return (Nothing, Stop)
which, from the relevant branch in the definition of >>=,
>>=
CondT m >>= k = CondT $ m >>= \case -- ... (Nothing, Continue) -> return (Nothing, Continue) -- ...
would seem to me to imply ignore >> norecurse is equivalent to ignore.
Quite right! That comment must have been from an older iteration. I'll delete that note.
The document says that
prune
is equivalent toignore >> norecurse
, but I don't see how this can be.In more detail: the (expanded) definitions of
ignore
,norecurse
, andprune
arewhich, from the relevant branch in the definition of
>>=
,would seem to me to imply
ignore >> norecurse
is equivalent toignore
.