Dopo aver scoperto che currying multi parameter-groups method is possible, sto cercando di ottenere una funzione parzialmente applicata che richiede parametri impliciti.Scala, Currying su un metodo a gruppi di parametri multipli inclusi parametri impliciti?
Non è possibile farlo. Se no, potresti spiegarmi perché?
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 _
^
Utilizzo un oggetto singleton per creare questa funzione parzialmente applicata e voglio usarlo in un ambito in cui è definito l'int implicito.
Grazie. Ma come ho detto, ho bisogno di dichiarare questa funzione in un altro oggetto singleton. Devo dichiararlo fuori dal contesto in cui lo uso. – iwalktheline
modificato il mio post. Penso che non ci sia altro modo per farlo, per le ragioni che ho già menzionato. – drexin
Hai ragione. Dato che il currying dà che Function e Function non consentono parametri impliciti, ho bisogno di elencare esplicitamente i parametri di uno dei due gruppi. – iwalktheline