Redefinition-free prelude alternative.
See README.md.........................
humble-prelude: the worst prelude alternative
This library aims to be an intersection of the current prelude ands "how it should be in the future". Unlike many other prelude alternatives, this package does not:
- Introduce any new abstraction
- Provide new functions
- Reexport a bunch of other libraries
Instead it's a subset of Prelude. Any Haskell source based on HumblePrelude
should also be buildable with Prelude
.
For those who want more convenience, HumblePrelude.Extras
reexports things that are frequently imported only for one or two symbols (e.g. Generic for deriving). But nothing else.
Plugin
One of the well-known problems of Prelude alternatives is the tempo loss of importing the module itself. humble-prelude offers a GHC plugin that imports any module specified in the flag. Add the following lines into your cabal file:
ghc-options: -fplugin=HumblePrelude.Extras
default-extensions: NoImplicitPrelude
Recommended libraries to complement this package
- Transmit byte sequence efficiently into a handle or a socket, or a new ByteString: mason
- Print something in a human-readable format: prettyprinter
- Concurrency, exceptions, process handling and file operations: unliftio
- Safely obtain minimum/maximum values: lens:Control.Lens.Fold
- Parsing: attoparsec
- Manipulating non-empty structures: semigroupoids
- Generic filters: witherable.