Skip to content

Commit

Permalink
removed the old bazaar
Browse files Browse the repository at this point in the history
  • Loading branch information
ekmett committed Sep 4, 2012
1 parent 33bdc70 commit 1af9892
Showing 1 changed file with 0 additions and 37 deletions.
37 changes: 0 additions & 37 deletions src/Control/Lens/Internal.hs
Expand Up @@ -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
-}

0 comments on commit 1af9892

Please sign in to comment.