úÎ!-ë)É=      !"#$%&'()*+,-./0123456789:;<(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> provisional non-portable Trustworthy 1456>SX(· witherableAn enhancement of = with A definition of ! must satisfy the following laws:  conservation (> ? . f) "a @ f compositionA . > ( f) .  g "a  (A . > ( f) . g))Parametricity implies the naturality law: t .  f "a  (t . f) witherable Effectful .  (B . f) "a B .  f witherable Monadic variant of .. This may have more efficient implementation. witherableLike C7, but you can remove elements instead of updating them.Formally, the class  represents a functor from  Kleisli Maybe to Hask.A definition of ! must satisfy the following laws:  conservation (Just . f) "a > f composition f .  g "a  (f <=< g) witherableLike D. witherable  "a  E witherable  f .  g "a filter (F (G) f g) witherable)This is used to characterize and clone a   . Since FilterLike (Peat a b) s t a bA is monomorphic, it can be used to store a filter in a container.  witherable A simple  .  witherable A simple .  witherableA   is like a  Xhttp://hackage.haskell.org/package/lens-4.13.2.1/docs/Control-Lens-Type.html#t:Traversal Traversal#, but you can also remove targets. witherable'This type allows combinators to take a   specializing the parameter f. witherableReconstitute a   from its monomorphic form. witherable is actually E, but left for consistency. witherable  "a H witherable through a filter. witherable through a filter. witherable through a filter. witherable1Filter each element of a structure targeted by a  . witherableAn infix alias for '. The name of the operator alludes to I, and has the same fixity. witherableFlipped version of , the  version of . It has the same fixity as . () = H   witherable  = H  witherable/Remove the duplicate elements through a filter. witherableIRemove the duplicate elements through a filter. It is often faster than ., especially when the comparison is expensive. witherablezRemoves duplicate elements from a list, keeping only the first occurrence. This is asymptotically faster than using  from  Data.List. witherablejRemoves duplicate elements from a list, keeping only the first occurrence. This is usually faster than =, especially for things that have a slow comparison (like J).   41K      !"#$%&'()*+,-./0123456789:;<=>?@ABCDBEFBGHBCIBJKBELBEMBN BEOBEPQRSBETBUBEVW'witherable-0.3.1-Dr8NKBGZ4EaI0fAbZD0oLxData.Witherable Data.Functor<&> Data.Listnub WitherablewitherwitherMfilterA FilterablemapMaybe catMaybesfilterPeatrunPeatFilter' FilterLike'Filter FilterLike cloneFilterwitherOf forMaybeOf mapMaybeOf catMaybesOf filterAOffilterOf<$?><&?>forMaybeordNubOf hashNubOfordNubhashNub$fApplicativePeat $fFunctorPeat$fFilterableMaybeT$fFilterableIdentityT$fFilterableSum$fFilterableProduct$fFilterableCompose$fFilterableSeq$fFilterableVector$fFilterableConst$fFilterableProxy$fFilterableHashMap$fFilterableMap$fFilterableIntMap$fFilterable[]$fFilterableEither$fFilterableMaybe$fWitherableMaybeT$fWitherableIdentityT$fWitherableSum$fWitherableProduct$fWitherableCompose$fWitherableSeq$fWitherableVector$fWitherableConst$fWitherableProxy$fWitherableHashMap$fWitherableMap$fWitherableIntMap$fWitherable[]$fWitherableEither$fWitherableMaybebaseData.Traversable TraversableGHC.Basefmap GHC.MaybeJusttraverseData.Functor.ComposeComposepureFunctor Data.MaybeidliftA2ghc-prim GHC.Classes&&flip<$>String