The _
in curriedMethod (2) _
asks the compiler to perform eta-expansion. The result of this is a function, afterwards there is no way (or need) to distinguish between a partially applied function and the result of eta expansion.
The separate parameter lists in a method like curriedMethod
are actually implemented as a single method with all the parameters combined. Eta-expansion would be needed to make the method into a function anyway, so the partial expansion is implemented by letting the closure created by eta-expansion close over the partially-applied parameters.