nhc98: ensure the Either type is identical with Prelude.Either.
#ifdef __GLASGOW_HASKELL__
import GHC.Base
#ifdef __GLASGOW_HASKELL__
import GHC.Base
{-|
The 'Either' type represents values with two possibilities: a value of
{-|
The 'Either' type represents values with two possibilities: a value of
either :: (a -> c) -> (b -> c) -> Either a b -> c
either f _ (Left x) = f x
either _ g (Right y) = g y
either :: (a -> c) -> (b -> c) -> Either a b -> c
either f _ (Left x) = f x
either _ g (Right y) = g y
+#endif /* __GLASGOW_HASKELL__ */