3 ms·
do is more syntactic sugar for >>= (monadic bind) than macro. E.g. do s <- readLine "Enter name:" putStr $ "Hello, " ++ s reduces to read
by tromp 5y ago
do is more syntactic sugar for >>= (monadic bind) than macro. E.g.
do
s <- readLine "Enter name:"
putStr $ "Hello, " ++ s
reduces to
readLine "Enter name:" >>= (\s -> putStr $ "Hello, " ++ s)
But I agree you can use macros to implement syntactic sugar.