packages feed

intro 0.1.0.3 → 0.1.0.4

raw patch · 3 files changed

+16/−31 lines, 3 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Intro: type LHashMap = HashMap
- Intro: type LMap = Map
+ Intro: hash :: Hashable a => a -> Int
+ Intro: hashWithSalt :: Hashable a => Int -> a -> Int
+ Intro: rws :: Monoid w => (r -> s -> (a, s, w)) -> RWS r w s a

Files

README.md view
@@ -9,17 +9,15 @@ For String overloading the extension 'OverloadedStrings' should be used. Container types and Monad transformers are provided. -Most important - this Prelude tries not to be too fancy.+Most important - this Prelude tries to keep things simple. This means it just reexports from base and commonly used libraries and doesn't invent its own stuff.--Furthermore the Prelude is-not scattered over multiple files to keep things simple.+Furthermore the Prelude is not scattered over many files. Everything is exported explicitly to improve the quality of the documentation.  List of design decisions: -* Simplicity: Everything is in one file (Unfortunately we need Intro.Trustworthy for Safe Haskell)+* Keep everything at one place (There are one two source files, we need Intro.Trustworthy for Safe Haskell) * Conservative extension over the base Prelude * Rely only on very common external libraries * Avoid writing custom functions
intro.cabal view
@@ -3,7 +3,7 @@ -- see: https://github.com/sol/hpack  name:           intro-version:        0.1.0.3+version:        0.1.0.4 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@@ -11,12 +11,10 @@                 For String overloading the extension 'OverloadedStrings' should be used.                 Container types and Monad transformers are provided.                 .-                Most important - this Prelude tries not to be too fancy.+                Most important - this Prelude tries to keep things simple.                 This means it just reexports from base and commonly used libraries                 and doesn\'t invent its own stuff.-                .-                Furthermore the Prelude is-                not scattered over multiple files to keep things simple.+                Furthermore the Prelude is not scattered over many files.                 Everything is exported explicitly to improve the quality of the documentation. category:       Prelude stability:      experimental
src/Intro.hs view
@@ -20,17 +20,15 @@ -- For String overloading the extension 'OverloadedStrings' should be used. -- Container types and Monad transformers are provided. ----- Most important - this Prelude tries not to be too fancy.+-- Most important - this Prelude tries to keep things simple. -- This means it just reexports from base and commonly used libraries -- and doesn\'t invent its own stuff.------ Furthermore the Prelude is--- not scattered over multiple files to keep things simple.+-- Furthermore the Prelude is not scattered over many files. -- Everything is exported explicitly to improve the quality of the documentation. -- -- List of design decisions: ----- * Simplicity: Everything is in one file (Unfortunately we need Intro.Trustworthy for Safe Haskell)+-- * Keep everything at one place (There are one two source files, we need Intro.Trustworthy for Safe Haskell) -- * Conservative extension over the base Prelude -- * Rely only on very common external libraries -- * Avoid writing custom functions@@ -66,7 +64,7 @@ -- These functions are not provided for various reasons: -- -- * 'succ' and 'pred' are not commonly used and don't have safe alternatives. Maybe ask if these could be added to the 'safe' package?--- * '!!' is unsafe and /O(n)/. Use a 'Data.Map.Strict.Map' instead.+-- * '!!' is unsafe and /O(n)/. Use a 'Data.Map.Map' instead. -- * 'lines', 'unlines', 'words' and 'unwords' are not provided. Use qualified 'Data.Text' import instead. -- * Instead of 'foldl', it is recommended to use 'Data.Foldable.foldl''. -- * 'lex' is not commonly used. Use a parser combinator library instead.@@ -230,17 +228,15 @@   -- * Container types    -- ** Map and Set (Ordered)-  , Data.Map.Strict.Map-  , LMap+  , Data.Map.Map   , Data.Set.Set-  , Data.IntMap.Strict.IntMap+  , Data.IntMap.IntMap   , Data.IntSet.IntSet    -- ** HashedMap and HashSet   , Data.HashMap.Strict.HashMap-  , LHashMap   , Data.HashSet.HashSet-  , Data.Hashable.Hashable+  , Data.Hashable.Hashable(hash, hashWithSalt)   , Intro.Trustworthy.Hashable1   , Intro.Trustworthy.Hashable2 @@ -576,6 +572,7 @@   -- ** MonadRWS and RWST   , Control.Monad.RWS.CPS.MonadRWS   , Control.Monad.RWS.CPS.RWS+  , Control.Monad.RWS.CPS.rws   , Control.Monad.RWS.CPS.runRWS   , Control.Monad.RWS.CPS.evalRWS   , Control.Monad.RWS.CPS.execRWS@@ -671,18 +668,16 @@ import qualified Data.Function import qualified Data.Functor import qualified Data.Functor.Identity-import qualified Data.HashMap.Lazy import qualified Data.HashMap.Strict import qualified Data.HashSet import qualified Data.Hashable import qualified Data.Int-import qualified Data.IntMap.Strict+import qualified Data.IntMap import qualified Data.IntSet import qualified Data.List import qualified Data.List.Extra import qualified Data.List.NonEmpty-import qualified Data.Map.Lazy-import qualified Data.Map.Strict+import qualified Data.Map import qualified Data.Maybe import qualified Data.Monoid import qualified Data.Ord@@ -725,12 +720,6 @@  -- | Alias for lazy 'Data.ByteString.Lazy.ByteString' type LByteString = Data.ByteString.Lazy.ByteString---- | Alias for lazy 'Data.Map.Lazy.Map'-type LMap = Data.Map.Lazy.Map---- | Alias for lazy 'Data.HashMap.Lazy.HashMap'-type LHashMap = Data.HashMap.Lazy.HashMap  -- | A synonym for 'Data.Functor.fmap'. --