YS
Size: a a a
YS
AV
AV
YS
AV
pure :: a -> m a
AV
AV
pure 1 >>= pure
AV
m Int
т.е. компилятор не может вывести что же за контекст это такойYS
AI
AV
AV
let foo = pure 1 >>= pure 1
foo >>= print
print (foo :: Maybe Int)
AV
IO Int
, а во втором Maybe Int
AV
AI
AV
m
AV
AI
AS