-
Iustin Pop authored
This big patch converts from our home-grown monad-like constructs (the Either stuff) to a real, Either-like-but-another-name monad. We introduce a “Result a” monad, and this allows dropping many of the extra constructs. Hopefully the code is also more clear. Many of the functions could now be written in a generic-monad style, instead of Result specifically, but that will come in future patches. IAlloc.hs also has some unrelated patches.
942403e6