haskellfoundation / haskellfoundation/haskell-2010-revised-report
Changes to the `Functor` and `Monad` hierarchy
- Dominant language
- Typst
- Stars
- 20
- Forks
- 5
- Avg merge
- 4d 18h
- Merged PRs (30d)
- 6
Description
This is one of the major changes that differentiates the existing `Haskell2010` language report from the language as it is currently implemented and used.
- The Functor-Applicative-Monad proposal introduced the Applicative typeclass between `Functor` and `Monad`.
- The MonadFail proposal removed the `fail` method from the `Monad` typeclass and introduced a new typeclass `MonadFail`. The desugaring of do-notation uses this typeclass for matches on failable patterns.
- The "Monad of no return" proposal removes the `return` method from the `Monad` typeclass and defines it in terms of `Applicative.pure`. This change has been accepted, but is still in the process of being implemented. In view of the fact that we will probably get there sooner than later it might be better to already include this change in the revised report.
The proposals themselves are linked from the README.md of the repository.
Contributor guide
Research direction
Start with README.md to follow the linked Functor-Applicative-Monad, MonadFail, and Monad of no return proposals. Compare those requirements with the corresponding typeclass and do-notation sections of the report. Done means the revised report accurately reflects the selected proposals and their current implementation status.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100