High-Performance Functional Programming Through Effect Rotation

As I covered in a previous post, monad transformers have poor performance properties in languages and runtimes unequipped to deal with them — including the Scala programming language and the JRE.

There’s a general technique to improving performance that involves something I call effect rotation.