fail is:module

Transitional module providing the MonadFail class and primitive instances. This module can be imported for defining forward compatible MonadFail instances:
import qualified Control.Monad.Fail as Fail

instance Monad Foo where
(>>=) = {- ...bind impl... -}

-- Provide legacy fail implementation for when
-- new-style MonadFail desugaring is not enabled.
fail = Fail.fail

instance Fail.MonadFail Foo where
fail = {- ...fail implementation... -}
See https://gitlab.haskell.org/haskell/prime/-/wikis/libraries/proposals/monad-fail for more details.
Transitional module providing the MonadFail class and primitive instances. This module can be imported for defining forward compatible MonadFail instances:
import qualified Control.Monad.Fail as Fail

instance Monad Foo where
(>>=) = {- ...bind impl... -}

-- Provide legacy fail implementation for when
-- new-style MonadFail desugaring is not enabled.
fail = Fail.fail

instance Fail.MonadFail Foo where
fail = {- ...fail implementation... -}
See https://prime.haskell.org/wiki/Libraries/Proposals/MonadFail for more details.
An effect providing failure with an error message. This effect is invoked through the fail method from MonadFail. Predefined carriers:
Provider of the MonadFail instance for Eff.
A pure MonadFail.
Types for specifying how text encoding/decoding fails
The failure report formatter is like the print formatter, but it only shows failures. Documentation can be found here.
This library provides a Failable error monad class to unify errors across monads and transformers most commonly used to implement pipelines that can fail.
Compatibility layer for Control.Monad.Fail
Possible causes of failure of request.