Учитывая интерфейс Java
interface Value {
Value add(Value argument);
}
(поскольку Java не поддерживает символы вроде + в качестве имен методов), возможно ли определить метод псевдонима +
для псевдонима add
, чтобы при использовании класса из Scala можно было написать
result = value1 + value2
вместо
result = value1.add(value2)
or
result = value1 add value2
Псевдоним должен автоматически применяться ко всем классам, реализующим интерфейс.
scala.annotation.alpha
в Dotty, но это явно не работает - он не отменяет фактический метод добавления, но когда создаются метод добавления и оператор с тем же псевдонимом, он говорит, что существует двойное определение scastie.scala-lang.org/UvqrkDFjSXmp9yOYIRSNCg, что странно - person user   schedule 25.05.2020