packages feed

intro 0.3.0.1 → 0.3.1.0

raw patch · 3 files changed

+52/−44 lines, 3 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Intro: data Proxy k (t :: k) :: forall k. k -> *
- Intro: newtype Alt k (f :: k -> *) (a :: k) :: forall k. (k -> *) -> k -> *
- Intro: newtype Const k a (b :: k) :: forall k. * -> k -> *
- Intro: newtype ReaderT k r (m :: k -> *) (a :: k) :: forall k. * -> (k -> *) -> k -> *
+ Intro: class NFData1 (f :: * -> *)
+ Intro: class NFData2 (p :: * -> * -> *)
+ Intro: data Proxy k (t :: k) :: forall k. () => k -> *
+ Intro: newtype Alt k (f :: k -> *) (a :: k) :: forall k. () => (k -> *) -> k -> *
+ Intro: newtype ReaderT k r (m :: k -> *) (a :: k) :: forall k. () => * -> (k -> *) -> k -> *
+ Intro: type HasCallStack = ?callStack :: CallStack
- Intro: ($!) :: (a -> b) -> a -> b
+ Intro: ($!) :: () => (a -> b) -> a -> b
- Intro: ($) :: (a -> b) -> a -> b
+ Intro: ($) :: () => (a -> b) -> a -> b
- Intro: (&) :: a -> (a -> b) -> b
+ Intro: (&) :: () => a -> (a -> b) -> b
- Intro: ExceptT :: m (Either e a) -> ExceptT e a
+ Intro: ExceptT :: m Either e a -> ExceptT e a
- Intro: MaybeT :: m (Maybe a) -> MaybeT a
+ Intro: MaybeT :: m Maybe a -> MaybeT a
- Intro: [runMaybeT] :: MaybeT a -> m (Maybe a)
+ Intro: [runMaybeT] :: MaybeT a -> m Maybe a
- Intro: asTypeOf :: a -> a -> a
+ Intro: asTypeOf :: () => a -> a -> a
- Intro: asum :: (Foldable t, Alternative f) => t (f a) -> f a
+ Intro: asum :: (Foldable t, Alternative f) => t f a -> f a
- Intro: bifor :: (Bitraversable t, Applicative f) => t a b -> (a -> f c) -> (b -> f d) -> f (t c d)
+ Intro: bifor :: (Bitraversable t, Applicative f) => t a b -> (a -> f c) -> (b -> f d) -> f t c d
- Intro: bisequenceA :: (Bitraversable t, Applicative f) => t (f a) (f b) -> f (t a b)
+ Intro: bisequenceA :: (Bitraversable t, Applicative f) => t f a f b -> f t a b
- Intro: bisequenceA_ :: (Bifoldable t, Applicative f) => t (f a) (f b) -> f ()
+ Intro: bisequenceA_ :: (Bifoldable t, Applicative f) => t f a f b -> f ()
- Intro: bitraverse :: (Bitraversable t, Applicative f) => (a -> f c) -> (b -> f d) -> t a b -> f (t c d)
+ Intro: bitraverse :: (Bitraversable t, Applicative f) => (a -> f c) -> (b -> f d) -> t a b -> f t c d
- Intro: bool :: a -> a -> Bool -> a
+ Intro: bool :: () => a -> a -> Bool -> a
- Intro: break :: (a -> Bool) -> [a] -> ([a], [a])
+ Intro: break :: () => (a -> Bool) -> [a] -> ([a], [a])
- Intro: catMaybes :: [Maybe a] -> [a]
+ Intro: catMaybes :: () => [Maybe a] -> [a]
- Intro: class (ConvertString a b, ConvertString b (Maybe a), ConvertString b (Lenient a)) => EncodeString a b where encodeString = convertString decodeStringLenient = getLenient . convertString decodeString = convertString
+ Intro: class (ConvertString a b, ConvertString b (Maybe a), ConvertString b (Lenient a)) => EncodeString a b
- Intro: class Generic1 (f :: * -> *)
+ Intro: class Generic1 k (f :: k -> *)
- Intro: class IsList l where type Item l :: * where {
+ Intro: class IsList l where {
- Intro: const :: a -> b -> a
+ Intro: const :: () => a -> b -> a
- Intro: curry :: ((a, b) -> c) -> a -> b -> c
+ Intro: curry :: () => ((a, b) -> c) -> a -> b -> c
- Intro: cycleDef :: [a] -> [a] -> [a]
+ Intro: cycleDef :: () => [a] -> [a] -> [a]
- Intro: cycleMay :: [a] -> Maybe [a]
+ Intro: cycleMay :: () => [a] -> Maybe [a]
- Intro: denominator :: Ratio a -> a
+ Intro: denominator :: () => Ratio a -> a
- Intro: drop :: Int -> [a] -> [a]
+ Intro: drop :: () => Int -> [a] -> [a]
- Intro: dropEnd :: Int -> [a] -> [a]
+ Intro: dropEnd :: () => Int -> [a] -> [a]
- Intro: dropWhile :: (a -> Bool) -> [a] -> [a]
+ Intro: dropWhile :: () => (a -> Bool) -> [a] -> [a]
- Intro: dropWhileEnd :: (a -> Bool) -> [a] -> [a]
+ Intro: dropWhileEnd :: () => (a -> Bool) -> [a] -> [a]
- Intro: either :: (a -> c) -> (b -> c) -> Either a b -> c
+ Intro: either :: () => (a -> c) -> (b -> c) -> Either a b -> c
- Intro: eitherToMaybe :: Either a b -> Maybe b
+ Intro: eitherToMaybe :: () => Either a b -> Maybe b
- Intro: evalState :: State s a -> s -> a
+ Intro: evalState :: () => State s a -> s -> a
- Intro: execState :: State s a -> s -> s
+ Intro: execState :: () => State s a -> s -> s
- Intro: filter :: (a -> Bool) -> [a] -> [a]
+ Intro: filter :: () => (a -> Bool) -> [a] -> [a]
- Intro: fix :: (a -> a) -> a
+ Intro: fix :: () => (a -> a) -> a
- Intro: flip :: (a -> b -> c) -> b -> a -> c
+ Intro: flip :: () => (a -> b -> c) -> b -> a -> c
- Intro: for :: (Traversable t, Applicative f) => t a -> (a -> f b) -> f (t b)
+ Intro: for :: (Traversable t, Applicative f) => t a -> (a -> f b) -> f t b
- Intro: fromLeft :: a -> Either a b -> a
+ Intro: fromLeft :: () => a -> Either a b -> a
- Intro: fromMaybe :: a -> Maybe a -> a
+ Intro: fromMaybe :: () => a -> Maybe a -> a
- Intro: fromRight :: b -> Either a b -> b
+ Intro: fromRight :: () => b -> Either a b -> b
- Intro: fst :: (a, b) -> a
+ Intro: fst :: () => (a, b) -> a
- Intro: groupBy :: (a -> a -> Bool) -> [a] -> [[a]]
+ Intro: groupBy :: () => (a -> a -> Bool) -> [a] -> [[a]]
- Intro: groupSortBy :: (a -> a -> Ordering) -> [a] -> [[a]]
+ Intro: groupSortBy :: () => (a -> a -> Ordering) -> [a] -> [[a]]
- Intro: headDef :: a -> [a] -> a
+ Intro: headDef :: () => a -> [a] -> a
- Intro: headMay :: [a] -> Maybe a
+ Intro: headMay :: () => [a] -> Maybe a
- Intro: initDef :: [a] -> [a] -> [a]
+ Intro: initDef :: () => [a] -> [a] -> [a]
- Intro: initMay :: [a] -> Maybe [a]
+ Intro: initMay :: () => [a] -> Maybe [a]
- Intro: inits :: [a] -> [[a]]
+ Intro: inits :: () => [a] -> [[a]]
- Intro: intercalate :: [a] -> [[a]] -> [a]
+ Intro: intercalate :: () => [a] -> [[a]] -> [a]
- Intro: intersperse :: a -> [a] -> [a]
+ Intro: intersperse :: () => a -> [a] -> [a]
- Intro: isJust :: Maybe a -> Bool
+ Intro: isJust :: () => Maybe a -> Bool
- Intro: isLeft :: Either a b -> Bool
+ Intro: isLeft :: () => Either a b -> Bool
- Intro: isNothing :: Maybe a -> Bool
+ Intro: isNothing :: () => Maybe a -> Bool
- Intro: isRight :: Either a b -> Bool
+ Intro: isRight :: () => Either a b -> Bool
- Intro: iterate :: (a -> a) -> a -> [a]
+ Intro: iterate :: () => (a -> a) -> a -> [a]
- Intro: join :: Monad m => m (m a) -> m a
+ Intro: join :: Monad m => m m a -> m a
- Intro: lastDef :: a -> [a] -> a
+ Intro: lastDef :: () => a -> [a] -> a
- Intro: lastMay :: [a] -> Maybe a
+ Intro: lastMay :: () => [a] -> Maybe a
- Intro: lefts :: [Either a b] -> [a]
+ Intro: lefts :: () => [Either a b] -> [a]
- Intro: length :: Foldable t => forall a. t a -> Int
+ Intro: length :: Foldable t => forall a. () => t a -> Int
- Intro: liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f c
+ Intro: liftA2 :: Applicative f => forall a b c. () => (a -> b -> c) -> f a -> f b -> f c
- Intro: mapExcept :: (Either e a -> Either e' b) -> Except e a -> Except e' b
+ Intro: mapExcept :: () => (Either e a -> Either e' b) -> Except e a -> Except e' b
- Intro: mapExceptT :: (m (Either e a) -> n (Either e' b)) -> ExceptT e m a -> ExceptT e' n b
+ Intro: mapExceptT :: () => (m Either e a -> n Either e' b) -> ExceptT e m a -> ExceptT e' n b
- Intro: mapMaybe :: (a -> Maybe b) -> [a] -> [b]
+ Intro: mapMaybe :: () => (a -> Maybe b) -> [a] -> [b]
- Intro: mapMaybeT :: (m (Maybe a) -> n (Maybe b)) -> MaybeT m a -> MaybeT n b
+ Intro: mapMaybeT :: () => (m Maybe a -> n Maybe b) -> MaybeT m a -> MaybeT n b
- Intro: mapReader :: (a -> b) -> Reader r a -> Reader r b
+ Intro: mapReader :: () => (a -> b) -> Reader r a -> Reader r b
- Intro: mapReaderT :: (m a -> n b) -> ReaderT k1 r m a -> ReaderT k r n b
+ Intro: mapReaderT :: () => (m a -> n b) -> ReaderT k2 r m a -> ReaderT k1 r n b
- Intro: mapState :: ((a, s) -> (b, s)) -> State s a -> State s b
+ Intro: mapState :: () => ((a, s) -> (b, s)) -> State s a -> State s b
- Intro: mapStateT :: (m (a, s) -> n (b, s)) -> StateT s m a -> StateT s n b
+ Intro: mapStateT :: () => (m (a, s) -> n (b, s)) -> StateT s m a -> StateT s n b
- Intro: maybe :: b -> (a -> b) -> Maybe a -> b
+ Intro: maybe :: () => b -> (a -> b) -> Maybe a -> b
- Intro: maybeToEither :: a -> Maybe b -> Either a b
+ Intro: maybeToEither :: () => a -> Maybe b -> Either a b
- Intro: nubOrdBy :: (a -> a -> Ordering) -> [a] -> [a]
+ Intro: nubOrdBy :: () => (a -> a -> Ordering) -> [a] -> [a]
- Intro: null :: Foldable t => forall a. t a -> Bool
+ Intro: null :: Foldable t => forall a. () => t a -> Bool
- Intro: numerator :: Ratio a -> a
+ Intro: numerator :: () => Ratio a -> a
- Intro: on :: (b -> b -> c) -> (a -> b) -> a -> a -> c
+ Intro: on :: () => (b -> b -> c) -> (a -> b) -> a -> a -> c
- Intro: optional :: Alternative f => f a -> f (Maybe a)
+ Intro: optional :: Alternative f => f a -> f Maybe a
- Intro: partitionEithers :: [Either a b] -> ([a], [b])
+ Intro: partitionEithers :: () => [Either a b] -> ([a], [b])
- Intro: permutations :: [a] -> [[a]]
+ Intro: permutations :: () => [a] -> [[a]]
- Intro: repeat :: a -> [a]
+ Intro: repeat :: () => a -> [a]
- Intro: replicate :: Int -> a -> [a]
+ Intro: replicate :: () => Int -> a -> [a]
- Intro: reverse :: [a] -> [a]
+ Intro: reverse :: () => [a] -> [a]
- Intro: rights :: [Either a b] -> [b]
+ Intro: rights :: () => [Either a b] -> [b]
- Intro: runExcept :: Except e a -> Either e a
+ Intro: runExcept :: () => Except e a -> Either e a
- Intro: runExceptT :: ExceptT e m a -> m (Either e a)
+ Intro: runExceptT :: () => ExceptT e m a -> m Either e a
- Intro: runReader :: Reader r a -> r -> a
+ Intro: runReader :: () => Reader r a -> r -> a
- Intro: runState :: State s a -> s -> (a, s)
+ Intro: runState :: () => State s a -> s -> (a, s)
- Intro: scanl :: (b -> a -> b) -> b -> [a] -> [b]
+ Intro: scanl :: () => (b -> a -> b) -> b -> [a] -> [b]
- Intro: scanl1 :: (a -> a -> a) -> NonEmpty a -> NonEmpty a
+ Intro: scanl1 :: () => (a -> a -> a) -> NonEmpty a -> NonEmpty a
- Intro: scanr :: (a -> b -> b) -> b -> [a] -> [b]
+ Intro: scanr :: () => (a -> b -> b) -> b -> [a] -> [b]
- Intro: scanr1 :: (a -> a -> a) -> NonEmpty a -> NonEmpty a
+ Intro: scanr1 :: () => (a -> a -> a) -> NonEmpty a -> NonEmpty a
- Intro: seq :: a -> b -> b
+ Intro: seq :: () => a -> b -> b
- Intro: sequenceA :: (Traversable t, Applicative f) => t (f a) -> f (t a)
+ Intro: sequenceA :: (Traversable t, Applicative f) => t f a -> f t a
- Intro: sequenceA_ :: (Foldable t, Applicative f) => t (f a) -> f ()
+ Intro: sequenceA_ :: (Foldable t, Applicative f) => t f a -> f ()
- Intro: snd :: (a, b) -> b
+ Intro: snd :: () => (a, b) -> b
- Intro: some1 :: Alternative f => f a -> f (NonEmpty a)
+ Intro: some1 :: Alternative f => f a -> f NonEmpty a
- Intro: sortBy :: (a -> a -> Ordering) -> [a] -> [a]
+ Intro: sortBy :: () => (a -> a -> Ordering) -> [a] -> [a]
- Intro: span :: (a -> Bool) -> [a] -> ([a], [a])
+ Intro: span :: () => (a -> Bool) -> [a] -> ([a], [a])
- Intro: spanEnd :: (a -> Bool) -> [a] -> ([a], [a])
+ Intro: spanEnd :: () => (a -> Bool) -> [a] -> ([a], [a])
- Intro: split :: (a -> Bool) -> [a] -> [[a]]
+ Intro: split :: () => (a -> Bool) -> [a] -> [[a]]
- Intro: splitAt :: Int -> [a] -> ([a], [a])
+ Intro: splitAt :: () => Int -> [a] -> ([a], [a])
- Intro: splitOn :: Eq a => [a] -> [a] -> [[a]]
+ Intro: splitOn :: (Partial, Eq a) => [a] -> [a] -> [[a]]
- Intro: subsequences :: [a] -> [[a]]
+ Intro: subsequences :: () => [a] -> [[a]]
- Intro: swap :: (a, b) -> (b, a)
+ Intro: swap :: () => (a, b) -> (b, a)
- Intro: tailDef :: [a] -> [a] -> [a]
+ Intro: tailDef :: () => [a] -> [a] -> [a]
- Intro: tailMay :: [a] -> Maybe [a]
+ Intro: tailMay :: () => [a] -> Maybe [a]
- Intro: tails :: [a] -> [[a]]
+ Intro: tails :: () => [a] -> [[a]]
- Intro: take :: Int -> [a] -> [a]
+ Intro: take :: () => Int -> [a] -> [a]
- Intro: takeEnd :: Int -> [a] -> [a]
+ Intro: takeEnd :: () => Int -> [a] -> [a]
- Intro: takeWhile :: (a -> Bool) -> [a] -> [a]
+ Intro: takeWhile :: () => (a -> Bool) -> [a] -> [a]
- Intro: transpose :: [[a]] -> [[a]]
+ Intro: transpose :: () => [[a]] -> [[a]]
- Intro: traverse :: (Traversable t, Applicative f) => (a -> f b) -> t a -> f (t b)
+ Intro: traverse :: (Traversable t, Applicative f) => (a -> f b) -> t a -> f t b
- Intro: uncurry :: (a -> b -> c) -> (a, b) -> c
+ Intro: uncurry :: () => (a -> b -> c) -> (a, b) -> c
- Intro: unfoldr :: (b -> Maybe (a, b)) -> b -> [a]
+ Intro: unfoldr :: () => (b -> Maybe (a, b)) -> b -> [a]
- Intro: until :: (a -> Bool) -> (a -> a) -> a -> a
+ Intro: until :: () => (a -> Bool) -> (a -> a) -> a -> a
- Intro: unzip :: [(a, b)] -> ([a], [b])
+ Intro: unzip :: () => [(a, b)] -> ([a], [b])
- Intro: unzip3 :: [(a, b, c)] -> ([a], [b], [c])
+ Intro: unzip3 :: () => [(a, b, c)] -> ([a], [b], [c])
- Intro: withExcept :: (e -> e') -> Except e a -> Except e' a
+ Intro: withExcept :: () => (e -> e') -> Except e a -> Except e' a
- Intro: withReader :: (r' -> r) -> Reader r a -> Reader r' a
+ Intro: withReader :: () => (r' -> r) -> Reader r a -> Reader r' a
- Intro: withReaderT :: (r' -> r) -> ReaderT k r m a -> ReaderT k r' m a
+ Intro: withReaderT :: () => (r' -> r) -> ReaderT k r m a -> ReaderT k r' m a
- Intro: withState :: (s -> s) -> State s a -> State s a
+ Intro: withState :: () => (s -> s) -> State s a -> State s a
- Intro: withStateT :: (s -> s) -> StateT s m a -> StateT s m a
+ Intro: withStateT :: () => (s -> s) -> StateT s m a -> StateT s m a
- Intro: zip :: [a] -> [b] -> [(a, b)]
+ Intro: zip :: () => [a] -> [b] -> [(a, b)]
- Intro: zip3 :: [a] -> [b] -> [c] -> [(a, b, c)]
+ Intro: zip3 :: () => [a] -> [b] -> [c] -> [(a, b, c)]
- Intro: zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]
+ Intro: zipWith :: () => (a -> b -> c) -> [a] -> [b] -> [c]
- Intro: zipWith3 :: (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d]
+ Intro: zipWith3 :: () => (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d]

Files

intro.cabal view
@@ -1,9 +1,11 @@--- This file has been generated from package.yaml by hpack version 0.17.0.+-- This file has been generated from package.yaml by hpack version 0.20.0. -- -- see: https://github.com/sol/hpack+--+-- hash: 9fc8509089a8a65cf15057f855ce10d18a4da68eb2188fa16a129c05c22ee742  name:           intro-version:        0.3.0.1+version:        0.3.1.0 synopsis:       "Fixed Prelude" - Mostly total and safe, provides Text and Monad transformers description:    Intro is a modern Prelude which provides safe alternatives                 for most of the partial functions and follows other@@ -41,26 +43,26 @@       src   ghc-options: -Wall   build-depends:-      base                 >= 4.8     && < 5.0-    , binary               >= 0.7     && < 0.9-    , bytestring           >= 0.9     && < 0.11-    , containers           >= 0.5     && < 0.6-    , deepseq              >= 1.4     && < 1.5-    , dlist                >= 0.7     && < 0.9-    , extra                >= 1.5.1   && < 1.7-    , hashable             >= 1.2.5   && < 1.3-    , mtl                  >= 2.2     && < 2.3-    , safe                 >= 0.3.11  && < 0.4-    , text                 >= 0.7     && < 1.3-    , transformers         >= 0.4     && < 0.6-    , unordered-containers >= 0.2     && < 0.3-    , writer-cps-mtl       >= 0.1.1.2 && < 0.2+      base >=4.8 && <5.0+    , binary >=0.7 && <0.9+    , bytestring >=0.9 && <0.11+    , containers >=0.5 && <0.6+    , deepseq >=1.4 && <1.5+    , dlist >=0.7 && <0.9+    , extra >=1.5.1 && <1.7+    , hashable >=1.2.5 && <1.3+    , mtl >=2.2 && <2.3+    , safe >=0.3.11 && <0.4+    , text >=0.7 && <1.3+    , transformers >=0.4 && <0.6+    , unordered-containers >=0.2 && <0.3+    , writer-cps-mtl >=0.1.1.2 && <0.2   if impl(ghc < 8.0)     build-depends:-        semigroups >= 0.9 && < 1+        semigroups >=0.9 && <1   if impl(ghc < 8.1)     build-depends:-        bifunctors >= 5.2 && < 5.5+        bifunctors >=5.2 && <5.5   exposed-modules:       Intro   other-modules:@@ -76,30 +78,31 @@       test   ghc-options: -Wall   build-depends:-      base                 >= 4.8     && < 5.0-    , binary               >= 0.7     && < 0.9-    , bytestring           >= 0.9     && < 0.11-    , containers           >= 0.5     && < 0.6-    , deepseq              >= 1.4     && < 1.5-    , dlist                >= 0.7     && < 0.9-    , extra                >= 1.5.1   && < 1.7-    , hashable             >= 1.2.5   && < 1.3-    , mtl                  >= 2.2     && < 2.3-    , safe                 >= 0.3.11  && < 0.4-    , text                 >= 0.7     && < 1.3-    , transformers         >= 0.4     && < 0.6-    , unordered-containers >= 0.2     && < 0.3-    , writer-cps-mtl       >= 0.1.1.2 && < 0.2+      QuickCheck+    , base >=4.8 && <5.0+    , binary >=0.7 && <0.9+    , bytestring >=0.9 && <0.11+    , containers >=0.5 && <0.6+    , deepseq >=1.4 && <1.5+    , dlist >=0.7 && <0.9+    , extra >=1.5.1 && <1.7+    , hashable >=1.2.5 && <1.3     , intro-    , QuickCheck     , lens+    , mtl >=2.2 && <2.3+    , safe >=0.3.11 && <0.4+    , text >=0.7 && <1.3+    , transformers >=0.4 && <0.6+    , unordered-containers >=0.2 && <0.3+    , writer-cps-mtl >=0.1.1.2 && <0.2   if impl(ghc < 8.0)     build-depends:-        semigroups >= 0.9 && < 1+        semigroups >=0.9 && <1   if impl(ghc < 8.1)     build-depends:-        bifunctors >= 5.2 && < 5.5+        bifunctors >=5.2 && <5.5   other-modules:       BaseCompat       LensCompat+      Paths_intro   default-language: Haskell2010
src/Intro.hs view
@@ -611,8 +611,12 @@   , GHC.Generics.Generic   , GHC.Generics.Generic1   , Data.Typeable.Typeable-  , Control.DeepSeq.NFData   , Data.Binary.Binary+  , Control.DeepSeq.NFData+#if MIN_VERSION_base(4,10,0)+  , Control.DeepSeq.NFData1+  , Control.DeepSeq.NFData2+#endif    -- * Type level #if MIN_VERSION_base(4,9,0)@@ -647,6 +651,7 @@   , appendFileUtf8    -- * Error handling and debugging+  , HasCallStack #if MIN_VERSION_base(4,9,0)   , Control.Monad.Fail.MonadFail #endif@@ -895,7 +900,7 @@ -- | Throw an undefined error. Use only for debugging. undefined :: HasCallStack => a undefined = Prelude.undefined-{-# WARNING undefined "'undefined' remains in code" #-}+{-# WARNING undefined "'undefined' should be used only for debugging" #-}  -- | '<>' lifted to 'Control.Applicative.Applicative' (<>^) :: (Control.Applicative.Applicative f, Semigroup a) => f a -> f a -> f a
src/Intro/Trustworthy.hs view
@@ -72,7 +72,7 @@ -- trace message. trace :: Text -> a -> a trace = Debug.Trace.trace . unpack-{-# WARNING trace "'trace' remains in code" #-}+{-# WARNING trace "'trace' should be used only for debugging" #-}  -- | Like 'trace' but returning unit in an arbitrary 'Applicative' context. Allows -- for convenient use in do-notation.@@ -91,7 +91,7 @@ -- >   traceM $ "y: " ++ show y traceM :: APPLICATIVE m => Text -> m () traceM = Debug.Trace.traceM . unpack-{-# WARNING traceM "'traceM' remains in code" #-}+{-# WARNING traceM "'traceM' should be used only for debugging" #-}  -- | Like 'trace', but uses 'show' on the argument to convert it to a 'String'. --@@ -106,7 +106,7 @@ -- >     ... traceShow :: Show a => a -> b -> b traceShow = Debug.Trace.traceShow-{-# WARNING traceShow "'traceShow' remains in code" #-}+{-# WARNING traceShow "'traceShow' should be used only for debugging" #-}  -- | Like 'traceM', but uses 'show' on the argument to convert it to a 'String'. --@@ -117,20 +117,20 @@ -- >   traceShowM $ x + y traceShowM :: (Show a, APPLICATIVE m) => a -> m () traceShowM = Debug.Trace.traceShowM-{-# WARNING traceShowM "'traceShowM' remains in code" #-}+{-# WARNING traceShowM "'traceShowM' should be used only for debugging" #-}  -- | The 'traceIO' function outputs the trace message from the IO monad. -- This sequences the output with respect to other IO actions. traceIO :: MonadIO m => Text -> m () traceIO = liftIO . Debug.Trace.traceIO . unpack-{-# WARNING traceIO "'traceIO' remains in code" #-}+{-# WARNING traceIO "'traceIO' should be used only for debugging" #-}  -- | Like 'traceShow' but returns the shown value instead of a third value. traceShowId :: Show a => a -> a traceShowId = Debug.Trace.traceShowId-{-# WARNING traceShowId "'traceShowId' remains in code" #-}+{-# WARNING traceShowId "'traceShowId' should be used only for debugging" #-}  -- | Like 'trace' but returns the message instead of a third value. traceId :: Text -> Text traceId a = Debug.Trace.trace (unpack a) a-{-# WARNING traceId "'traceId' remains in code" #-}+{-# WARNING traceId "'traceId' should be used only for debugging" #-}