“…Pragmatically, the situation depends on the nature of the computational e↵ects considered. For e↵ects not requiring interaction with the program runtime, such as local names [28] or general recursion [7], one need not restrict M , as computing A(M ) then only depends on static information. However, this does not work well in general, as some e↵ects, e.g., I/O, do crucially depend on interaction with the program runtime, and so then will the computation of A(M ).…”