Adding a proper ListT to transformers and this package
Open
transformers
- Dominant language
- Haskell
- Stars
- 401
- Forks
- 72
- PR merge metrics
- No merged PRs in 30d
Description
I think we should add a type equivalent to the following to transformers (and mtl):
````haskell
newtype ChoiceT m a = ChoiceT { runChoiceT :: m (Maybe (ChoiceT m a)) }
````
This is a monad transformer, while it's well-known that the existing ListT is not.
And perhaps we should add the relevant MonadChoice class here (subject to design discussion)
Ideally this would happen in cooperation between the two libraries, hence why I'm opening it here. We would at least need all the instances to lift MonadX through ChoiceT
Bikeshedding name suggestions: ChoiceT, StreamT, NonDetT, ...
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.