module Control.Monad.Extras (seqM) where seqM :: Monad m => m a -> m a seqM :: forall (m :: * -> *) a. Monad m => m a -> m a seqM m a m = do a a <- m a m forall (m :: * -> *) a. Monad m => a -> m a return forall a b. (a -> b) -> a -> b $! a a