&gt; What exactly makes it arbitrary?<p>The word effect in the PFP world denotes anything that a language-level function does which may affect other functions and is not an argument or a return parameter. That definition is not valid outside of PFP&#x2F;LC, because it defines as effects as things that are indistinguishable from non-effects in other models of computation. E.g. it calls assignments to certain memory cells &quot;effects&quot; while assignments to other memory cells non-effects.<p>Again, my (very minor) point is that the word &quot;effect&quot; as you use it simply denotes a PFP <i>linguistic</i> concept rather than an essential computational thing. The only reason I mention it is that the word &quot;effect&quot; has a connotation of something that&#x27;s real and measurable beyond the language. That&#x27;s true for IO and time (computational complexity, which, interestingly, is not generally considered an effect in PFP), but not true for jumps (or continuations) and mutation.<p>&gt; delimited continuations (that is, normal higher-order functions)<p>Again, you are assuming PFP nomenclature. Delimited continuations do not require language-level functions at all, and higher-order functions can be defined in terms of delimited continuations just as the opposite is true. Delimited continuations are no more higher-order functions than higher-order functions (or monads, rather) are delimited continuations. PFP is not the only way to look at abstractions and not the only fundamental nomenclature.