Después de haber descubierto que currying multi parameter-groups method is possible, estoy tratando de obtener una función parcialmente aplicada que requiere parámetros implícitos.Scala, Currying en el método de grupo de parámetros múltiples que incluye parámetros implícitos?
No es posible hacer esto. Si no, ¿podrías explicarme por qué?
scala> def sum(a: Int)(implicit b: Int): Int = { a+b }
sum: (a: Int)(implicit b: Int)Int
scala> sum(3)(4)
res12: Int = 7
scala> val partFunc2 = sum _
<console>:8: error: could not find implicit value for parameter b: Int
val partFunc2 = sum _
^
uso un objeto singleton para crear esta función aplicada parcialmente y quiero utilizarlo en un ámbito de aplicación donde se define el int implícito.
Gracias. Pero como dije, necesito declarar esta función en otro objeto singleton. Necesito declararlo fuera del contexto donde lo uso. – iwalktheline
editó mi publicación. Creo que no hay otra forma de hacerlo, por las razones que ya mencioné. – drexin
Tienes razón. Como currying da Function y Function no permite params implícitos, necesito enumerar explícitamente los params de uno de los dos grupos. – iwalktheline