Desugaring Haskell's do-notation into applicative operations. - Simon Marlow; Simon Peyton Jones; Edward Kmett; Andrey Mokhov (Haskell, 2016)