How to avoid stack overflow with monads?

There’s also purescript-safely: https://github.com/paf31/purescript-safely, which is probably one of the simplest ways of making a recursive monadic computation stack-safe, but probably has some of the highest overheads too.