| Start |
|---|
| Free Empty ~~ Identity Given we have which is isomorphic to |
| Free Identity ~~ (Nat,) ~~ Writer Nat Given we have which is isomorphic to or equivalently (if you promise to evaluate the fst element first) |
| Free Maybe ~~ MaybeT (Writer Nat) Given we have which is equivalent to or equivalently (if you promise to evaluate the fst element first) |
| Free (Writer w) ~~ Writer [w] Given we have which is isomorphic to or, equivalently, (if you promise to evaluate the log first), |
| Free (Const c) ~~ Either c Given we have which is isomorphic to |
| Free (Reader x) ~~ Reader (Stream x) Given we have which is isomorphic to or equivalently |
Read Article
https://develop.horje.com/learn/1434/reference