Expresiones como¿Cómo puedo escribir f (g (h (x))) en Scala con menos paréntesis?
ls map (_ + 1) sum
son preciosas porque son de izquierda a derecha y no anidados. Pero si las funciones en cuestión se definen fuera de la clase, es menos bonita.
Siguiendo an example me trataron
final class DoublePlus(val self: Double) {
def hypot(x: Double) = sqrt(self*self + x*x)
}
implicit def doubleToDoublePlus(x: Double) =
new DoublePlus(x)
que funciona muy bien en lo que puedo decir, aparte de
escribir mucho para un método de
lo que necesita saber de antemano que desea utilizarlo de esta manera
¿Hay algún truco que resuelva esos dos problemas?
¿Qué hay de malo en definir hypot en un objeto de utilidad y luego usarlo como 'hypot (3,4)'? Parece la mejor opción aquí. – IttayD