sociales redes mediatica informacion scala operator-precedence

redes - Preferencia del operador en Scala



informacion mediatica (4)

las reglas no modificadas pueden ser inconvenientes, porque tienes restricciones para nombrar tus métodos

  • no tiene ninguna restricción al nombrar sus métodos. Por ejemplo, puede definir los métodos +, -, * y etc. para una clase.
  • también debemos seguir las "reglas no modificadas" de facto (impuestas por las reglas de precedencia del operador de Scala) mencionadas en la respuesta anterior ( share ) por Thomas Jung: es común para muchos lenguajes de programación si no para todos. y álgebra abstracta; no necesitamos redefinir la precedencia del operador para a + b * c.

Ver el Capítulo 6 del libro http://www.scala-lang.org/docu/files/ScalaByExample.pdf para el ejemplo de clase "Racional".

Me gusta la propuesta de Scala sobre la precedencia de los operadores, pero en algunos casos raros, las reglas no modificadas pueden ser inconvenientes, porque usted tiene restricciones para nombrar sus métodos. ¿Hay formas de definir otras reglas para una clase / archivo, etc. en Scala? Si no, ¿se resolvería en el futuro?



La precedencia del operador se fija en la Referencia de Scala - 6.12.3 Operaciones Iniciales por el primer carácter en el operador. Enumerado en orden creciente de precedencia:

(all letters) | ^ & = ! < > : + - * / % (all other special characters)

Y no es muy probable que cambie. Probablemente creará más problemas de los que corrige. Si se usa la precedencia normal del operador, cambiarla por una clase será bastante confuso.


No existe tal habilidad y es poco probable que se agregue en un futuro previsible.