precursor: Prelude replacement

[ library, mit, prelude ] [ Propose Tags ]

Features

No more String
String is removed in favor of lazy Data.Text.Lazy.Text.
No more Num
The Num typeclass is now just for types which can be converted from integer literals.
Semigroups
Semigroups are now in scope by default, as well as some useful wrappers.
Semirings
A Semiring has the operations + and *, and the members one and zero. Bool is a Semiring, as is Integer, etc. Num is not a superclass of Semiring.
Sensibly strict
Several functions, such as foldl, sum, product, etc. are strict as default.
No unnecessary Monads
Functions such as Control.Monad.sequence, Control.Monad.>>, and Control.Monad.replicateM are removed in favor of the equivalent sequenceA, *>, and replicateA on Applicatives.
Fewer partial functions
Functions like head, last, minimum, etc. now return Nothing when called on empty structures. tail and init return empty lists when called on empty lists.
Data structures
Map and Set (the strict variants) are now in scope by default, with a minimal, non-colliding aliased api.
Transformers
State is now in scope by default.
Debugging
Handy functions like trace, traceShow, and notImplemented are in scope by default. They give warnings when used so they can't be forgotten.
Other handy functions
An O(n*log n) nub, foldr2, converge, bool, and others.

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0
Dependencies base (>=4.7 && <5), bifunctors (>=5.4), bytestring (>=0.10), containers (>=0.5), mtl (>=2.2), text (>=1.2), text-show (>=3.4) [details]
License MIT
Copyright 2016 Donnacha Oisín Kidney
Author Donnacha Oisín Kidney
Maintainer mail@doisinkidney.com
Category Prelude
Home page https://github.com/oisdk/precursor#readme
Source repo head: git clone https://github.com/oisdk/precursor
Uploaded by oisdk at 2016-10-26T19:03:47Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 810 total (6 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2016-10-29 [all 1 reports]