List モナドには がありreturn x = [x]
ます。では、なぜ次の例で結果が ではないの[(["a", "b"], [2, 3])]
でしょうか?
> pairs a b = do { x <- a; y <- b; return (x, y)}
> pairs ["a", "b"] [2,3]
[("a",2),("a",3),("b",2),("b",3)]
List モナドには がありreturn x = [x]
ます。では、なぜ次の例で結果が ではないの[(["a", "b"], [2, 3])]
でしょうか?
> pairs a b = do { x <- a; y <- b; return (x, y)}
> pairs ["a", "b"] [2,3]
[("a",2),("a",3),("b",2),("b",3)]