Ok, I got monadic code right. Finally. (But I lose fair disjunction in previous commits)