Ian Duncan, a Mercury engineer, discusses how Haskell helps maintain a large and complex codebase by encoding operational knowledge into types, making the safe path easy and the wrong thing difficult. He shares lessons learned from Mercury's experience with Haskell, including the importance of containing mutation, encoding incantations in types, and using durable execution frameworks like ...