raulraja
11/08/2017, 6:18 PMD
can be injected. Once the dependencies are injected we operate over IO
which allows us to do async stuff. All known errors are modeled as CharacterError
and uncaught throwables are caught by IO. The program finally produces a value of result A