Want to take part in these discussions? Sign in if you have an account, or apply for one below
Vanilla 1.1.10 is a product of Lussumo. More Information: Documentation, Community Support.
I’ve seen the phrase “partial evaluation” refer to morphisms $Z^{X \times Y} \to Z^Y$ induced by the evaluation map $(Z^Y)^X \to Z^Y$ corresponding to a (global) element of $X$, or more generally for higher arity. More plainly the operation of converting a function $f(-,-)$ to a function $f(x, -)$. Wikipedia’s page for the same phrase describes a special case of this operation in the context of optimizing computer programs, and prefers “partial application” for the general operation.
The newly created page, while discussing related ideas, runs the risk of confusion. There should probably be some sort of disambiguation mechanism.
Huryl, in program optimization, the program to partially evaluate doesn’t actually have to have type ($I_s \times I_d \to O$). That’s just a conceptual way of organizing the situation. Usually, the static input is syntactically substituted into the program, and partial evaluation then simplifies the program without having the dynamic input. This seems closer to Paolo Perrone’s usage. In other words, I think you’re both getting at the same thing.
Maybe after the definition, there should be an explanation of how to get $(3 + 4 + 5) \longrightarrow (7 + 5)$ out of it?
1 to 4 of 4