You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
quite often, you don't need the full power of a monad and the corresponding applicative functor is sufficient. these cases could be detected by the macro.
additionally, there are at least some monads where there is a "better" (more performant, less blocking...) way to implement the <*> operation than the default using bind.
would it be possible to exploit this fact to generate code that directly calls <*> instead of bind?