haskell / haskell/mtl

Adding a proper ListT to transformers and this package

Aperta
#85 28 commenti 0 reazioni 0 assegnatari Vedi su GitHub
transformers
Lingua principale
Haskell
Stelle
401
Fork
72
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

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, ...

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.