私は持っている:
stuff :: IO [String]
doThings :: String -> IO [()]
そして、私はしたいです
stuff >>= doThings
しかし、私のタイプはオフです。私は本質的にリフトバインドをしたいのですが、私が試みるすべてが微妙に間違っています.
私は持っている:
stuff :: IO [String]
doThings :: String -> IO [()]
そして、私はしたいです
stuff >>= doThings
しかし、私のタイプはオフです。私は本質的にリフトバインドをしたいのですが、私が試みるすべてが微妙に間違っています.
そのような関数がたくさんある場合、これは の教科書的なユースケースですListT
:
main = runListT $ do
string <- ListT stuff
ListT $ doThings string