cabal-version: >=1.10 name: Prelude version: 0.1.0.1 x-revision: 1 license: BSD3 license-file: LICENSE author: Herbert Valerio Riedel copyright: 2017-2018 Herbert Valerio Riedel maintainer: hvr@gnu.org bug-reports: https://github.com/hvr/Prelude/issues category: Prelude build-type: Simple synopsis: A Prelude module replacement description: This package provides a "Prelude" module drop-in replacement for [base](https://hackage.haskell.org/package/base)'s @Prelude@ module. . Goals of this package include: . * Be reasonably modest and remain close in spirit to the @base@ package's scope . * Depend only on @base@ (via @base-noprelude@) for recent GHC versions . * Avoid partial functions being in scope by default; redefine common partial functions such as @read@ or @head@ to be 'Maybe'-valued . * Provide a uniform "Prelude" across multiple GHC releases (currently GHC 7.0 and newer supported) to the extent possible given typeclass restructurings such as AMP or FTP . * Reduce @import@ clutter by reexporting common verbs from modules such as @Control.Monad@ and @Control.Applicative@ . === Versioning and Usage . This package is intended to be used in combination with [base-noprelude](https://hackage.haskell.org/package/base-noprelude) and possibly [base-orphans](https://hackage.haskell.org/package/base-orphans). @Prelude@ strives to be faithful to the [PVP](https://pvp.haskell.org/); however, for technical reasons @Prelude@'s API is not fully determined by its version due to changes in core typeclasses and consequently it's strongly advised to declare a dependency on @Prelude@ always in conjunction with a dependency on @base-noprelude@. . For instance, all you need to do in order to use this package if you were previously depending on [base](https://hackage.haskell.org/package/base) via . > build-depends: > base (>= 4.3.0.0 && < 4.11) || ^>= 4.11.0.0 . is to replace @base@ by @base-noprelude@ and also add a dependency on @Prelude@ like so . > build-depends: > Prelude ^>= 0.1.0.0 > , base-noprelude (>= 4.3.0.0 && < 4.11) || ^>= 4.11.0.0 . and this will effectively replace the implicit "Prelude" module. . Alternatively, if you only intend to support GHC 7.10 and newer, you can make use @mixins@ like so . > build-depends: > Prelude ^>= 0.1.0.0 > , base (>= 4.8.0.0 && < 4.12) || ^>= 4.12.0.0 > > mixins: base hiding (Prelude) . source-repository head type: git location: https://github.com/hvr/Prelude.git library exposed: False hs-source-dirs: src exposed-modules: Prelude default-language: Haskell2010 other-extensions: BangPatterns CPP NoImplicitPrelude build-depends: base >=4.3 && <4.14 if !impl(ghc >= 8.0) build-depends: semigroups >= 0.18.5 && < 0.19 , fail == 4.9.* , transformers >= 0.3.0.0 && < 0.6 if impl(ghc == 7.4.*) build-depends: ghc-prim == 0.2.*