Skip to content
An enhanced core prelude, meant for building up more complete preludes on top of.
Latest commit f511a9c May 11, 2016 @snoyberg Version bump
Failed to load latest commit information.
.gitignore Initial import from classy-prelude Aug 8, 2012
.travis.yml Travis update Mar 7, 2016
BasicPrelude.hs Add deprecated pragma for empty in BasicPrelude Mar 6, 2016 Version bump May 11, 2016
CorePrelude.hs Add Data.Bool.bool to CorePrelude.hs. May 7, 2016
LICENSE Don't escape angle brackets Mar 6, 2015
Setup.hs Initial import from classy-prelude Aug 8, 2012
basic-prelude.cabal Version bump May 11, 2016
stack.yaml Add missing stack.yaml Mar 7, 2016
test-is-a-prelude.hs Add a test for complete prelude-ness, add missing functions to comple… Aug 13, 2012


The premise of basic-prelude is that there are a lot of very commonly desired features missing from the standard Prelude, such as commonly used operators (<$> and >=>, for instance) and imports for common datatypes (e.g., ByteString and Vector). At the same time, there are lots of other components which are more debatable, such as providing polymorphic versions of common functions.

So basic-prelude is intended to give a common foundation for a number of alternate preludes. The package provides two modules: CorePrelude provides the common ground for other preludes to build on top of, while BasicPrelude exports CorePrelude together with commonly used list functions to provide a drop-in replacement for the standard Prelude.

Users wishing to have an improved Prelude can use BasicPrelude. Developers wishing to create a new prelude should use CorePrelude.

Something went wrong with that request. Please try again.