module Data.Functor.Syntax where
(<$$>) :: (Functor f0, Functor f1) =>
(a -> b)
-> f1 (f0 a)
-> f1 (f0 b)
(<$$>) = fmap . fmap
(<$$$>) :: (Functor f0, Functor f1, Functor f2) =>
(a -> b)
-> f2 (f1 (f0 a))
-> f2 (f1 (f0 b))
(<$$$>) = fmap . fmap . fmap
(<$$$$>) :: (Functor f0, Functor f1, Functor f2, Functor f3) =>
(a -> b)
-> f3 (f2 (f1 (f0 a)))
-> f3 (f2 (f1 (f0 b)))
(<$$$$>) = fmap . fmap . fmap . fmap
(<$$$$$>) :: (Functor f0, Functor f1, Functor f2, Functor f3, Functor f4) =>
(a -> b)
-> f4 (f3 (f2 (f1 (f0 a))))
-> f4 (f3 (f2 (f1 (f0 b))))
(<$$$$$>) = fmap . fmap . fmap . fmap . fmap