-- | -- Strict identity monad module Data.Vector.Fixed.Internal.Id ( Id(..) ) where -- | Strict identity monad newtype Id a = Id { runID :: a } instance Monad Id where return = Id Id a >>= f = f a {-# INLINE return #-} {-# INLINE (>>=) #-}