Given a failable ... <- ... pattern on sum type Request with two variants:
Most users probably don't want to implement a MonadFail instance for monads defined in a library. The following would be more helpful:
• Failable pattern in non-failable do statement
`(HaulRequest (resource, requiredAmount) amount)`
This pattern fails on:
`ConstructionRequest`
• Note: the left pattern of `<-` must succeed on
all variants unless `MonadFail` is defined
• Perhaps you intended to handle each variant with `case`:
`r0 <- get building
case r0 of
HaulRequest ...
ConstructionRequest ...`
• Perhaps you intended to define a
`MonadFail (SystemT World IO)` instance to
handle failable patterns
from Haskell GameDev discord
Given a failable
... <- ...
pattern on sum typeRequest
with two variants:Most users probably don't want to implement a
MonadFail
instance for monads defined in a library. The following would be more helpful: