Preview
Open Original
The problem with effect typing is that if you “just” don’t have global (including bare syscalls) you the same rigor: instead of a function declaring its effects as a separate out of band set of parameters, it declares its effects by way of its ordinary parameters