|
|
|
|
|
This page exists to track proposals that the [ Core Libraries Committee](https://wiki.haskell.org/Core_Libraries_Committee) is actively working on.
|
|
|
|
|
|
# Active Proposals
|
|
|
|
|
|
- [Libraries/Proposals/SemigroupMonoid](libraries/proposals/semigroup-monoid)
|
|
|
- [Libraries/Proposals/MonadFail](libraries/proposals/monad-fail)
|
|
|
- [Libraries/Proposals/ExpandFloating](libraries/proposals/expand-floating) has been accepted through Phase 1.
|
|
|
|
|
|
# Roadmap for GHC's `base` library
|
|
|
|
|
|
|
|
|
This page aims to provide a concise summarized view of major planned changes for upcoming GHC releases related to the `base` library (including related GHC facilities such warnings).
|
|
|
|
|
|
## GHC 8.0 (`base-4.9`)
|
|
|
|
|
|
- Add `Data.Semigroup` and `Data.List.NonEmpty` modules
|
|
|
|
|
|
([ ghc:\#10365](https://ghc.haskell.org/intertrac/%2310365), i.e. Phase1 of [Proposals/SemigroupMonoid](libraries/proposals/semigroup-monoid))
|
|
|
- Add `-Wcompat` warnings about missing Semigroup instances.
|
|
|
- Add `Control.Monad.Fail` and a `MonadFail` language pragma. (Phase 1 of [Proposals/MonadFail](libraries/proposals/monad-fail))
|
|
|
- Add `-Wcompat` warnings about missing `MonadFail` instances.
|
|
|
- Add `expm1`, `log1p`, `log1pexp`, `log1mexp` to `Floating` (with defaults) (Phase 1 of [Proposals/ExpandFloating](libraries/proposals/expand-floating))
|
|
|
|
|
|
## GHC 8.2
|
|
|
|
|
|
- Nothing planned.
|
|
|
|
|
|
## GHC 8.4
|
|
|
|
|
|
- Turn the `Semigroup` and `MonadFail` warnings into warnings that are on by default.
|
|
|
- Warn about the pending removal of the default definitions for `log1p`, etc. (tentative)
|
|
|
|
|
|
## GHC 8.6
|
|
|
|
|
|
- Turn on `MonadFail` by default.
|
|
|
- Move `Semigroup` into `Prelude`.
|
|
|
- Remove the default definitions of `log1p`, etc. (tentative)
|
|
|
|
|
|
## GHC 8.8
|
|
|
|
|
|
- Nothing planned. |
|
|
- [https://prime.haskell.org/wiki/Libraries/Proposals/SemigroupMonoid](https://prime.haskell.org/wiki/Libraries/Proposals/SemigroupMonoid) |