diff --git a/src/Control/Lens/Internal.hs b/src/Control/Lens/Internal.hs index 3e43cf5e6..1d665c112 100644 --- a/src/Control/Lens/Internal.hs +++ b/src/Control/Lens/Internal.hs @@ -486,40 +486,3 @@ instance Applicative Mutator where pure = Mutator Mutator f <*> Mutator a = Mutator (f a) -{- -data Bazaar c d a - = Buy a - | Trade (Bazaar c d (d -> a)) c - -instance Functor (Bazaar c d) where - fmap f (Buy a) = Buy (f a) - fmap f (Trade k b) = Trade (fmap (f .) k) b - -instance Applicative (Bazaar c d) where - pure = Buy - Buy f <*> m = fmap f m - Trade k c <*> m = Trade (flip <$> k <*> m) c - -instance (c ~ d) => Comonad (Bazaar c d) where - extract (Buy a) = a - extract (Trade z c) = extract z c - duplicate = duplicateBazaar - --- | 'Bazaar' is an indexed 'Comonad'. -duplicateBazaar :: Bazaar c e a -> Bazaar c d (Bazaar d e a) -duplicateBazaar (Buy b) = Buy (Buy b) -duplicateBazaar (Trade z c) = Trade (Trade <$> duplicateBazaar z) c - --- | A trivial 'Bazaar'. -sell :: c -> Bazaar c d d -sell = Trade (Buy id) - -instance (c ~ d) => ComonadApply (Bazaar c d) where - (<@>) = (<*>) - --- | Given an action to run for each matched pair, traverse a bazaar. -bazaar :: Applicative f => (c -> f d) -> Bazaar c d b -> f b -bazaar _ (Buy b) = pure b -bazaar f (Trade k c) = f c <**> bazaar f k --} -