@@ -101,7 +101,7 @@ nubDyn d =
101instance Reflex t => Functor (Dynamic t) where
101instance Reflex t => Functor (Dynamic t) where
102 fmap f d =
102 fmap f d =
103 let e' = fmap f $ updated d
103 let e' = fmap f $ updated d
104− eb' = push (\b' -> liftM Just $ constant b') e'
104+ eb' = push (\b' -> fmap Just $ constant b') e'
105 b0 = fmap f $ current d
105 b0 = fmap f $ current d
@@ -124,7 +124,7 @@ foldDyn f = foldDynMaybe $ \o v -> Just $ f o v
124-- time the 'Event' occurs using a monadic folding function on the
124-- time the 'Event' occurs using a monadic folding function on the
125-- previous value and the value of the 'Event'.
125-- previous value and the value of the 'Event'.
126foldDynM :: (Reflex t, MonadHold t m, MonadFix m) => (a -> b -> PushM t b) -> b -> Event t a -> m (Dynamic t b)
126foldDynM :: (Reflex t, MonadHold t m, MonadFix m) => (a -> b -> PushM t b) -> b -> Event t a -> m (Dynamic t b)
127−foldDynM f = foldDynMaybeM $ \o v -> liftM Just $ f o v
127+foldDynM f = foldDynMaybeM $ \o v -> fmap Just $ f o v
129foldDynMaybe :: (Reflex t, MonadHold t m, MonadFix m) => (a -> b -> Maybe b) -> b -> Event t a -> m (Dynamic t b)
129foldDynMaybe :: (Reflex t, MonadHold t m, MonadFix m) => (a -> b -> Maybe b) -> b -> Event t a -> m (Dynamic t b)
130foldDynMaybe f = foldDynMaybeM $ \o v -> return $ f o v
130foldDynMaybe f = foldDynMaybeM $ \o v -> return $ f o v
@@ -167,7 +167,7 @@ firstE (h:t) = mergeEventsLeftBiased h =<< firstE t
167concatEventsWith :: (Reflex t m) => (a -> a -> a) -> [Event t a] -> m (Event t a)
167concatEventsWith :: (Reflex t m) => (a -> a -> a) -> [Event t a] -> m (Event t a)
168concatEventsWith _ [] = return never
168concatEventsWith _ [] = return never
169concatEventsWith _ [e] = return e
169concatEventsWith _ [e] = return e
170−concatEventsWith f es = mapEM (liftM (foldl1 f . map (\(Const2 _ :=> v) -> v) . DMap.toList) . sequenceDmap) <=< mergeEventDMap $ DMap.fromList $ map (\(k, v) -> WrapArg (Const2 k) :=> v) $ zip [0 :: Int ..] es
170+concatEventsWith f es = mapEM (fmap (foldl1 f . map (\(Const2 _ :=> v) -> v) . DMap.toList) . sequenceDmap) <=< mergeEventDMap $ DMap.fromList $ map (\(k, v) -> WrapArg (Const2 k) :=> v) $ zip [0 :: Int ..] es
171--concatEventsWith f (h:t) = mergeEventsWith f h =<< concatEventsWith f t
171--concatEventsWith f (h:t) = mergeEventsWith f h =<< concatEventsWith f t
173mconcatE :: (Reflex t m, Monoid a) => [Event t a] -> m (Event t a)
173mconcatE :: (Reflex t m, Monoid a) => [Event t a] -> m (Event t a)
@@ -320,7 +320,7 @@ getDemuxed d k = return $ demuxed d k
320demuxed :: (Reflex t, Eq k) => Demux t k -> k -> Dynamic t Bool
320demuxed :: (Reflex t, Eq k) => Demux t k -> k -> Dynamic t Bool
321demuxed d k =
321demuxed d k =
322 let e = select (demuxSelector d) (Const2 k)
322 let e = select (demuxSelector d) (Const2 k)
323− in unsafeBuildDynamic (liftM (==k) $ sample $ demuxValue d) e
323+ in unsafeBuildDynamic (fmap (==k) $ sample $ demuxValue d) e
325--------------------------------------------------------------------------------
325--------------------------------------------------------------------------------
326-- collectDyn
326-- collectDyn