## Why is specializing a monadic function with Identity less efficient than writing it manually?

I have need two higher-order functions, one taking a side-effect free function and the other taking a monadic function as argument:
frobM :: Monad m => (a -> m a) -> b -> m b
frob :: (a -> a) -> b -> b
They are very similar, t...

more
»