ParentFull threadNoe2097·By having IO functions taking an argument representing the global IO environment/state and returning it. That way IO functions can remain pure.View on HN