Чтобы использовать инфиксный идентификатор в качестве нефиксированного, необходимо поставить ключевое слово op
впереди.Например:
val op + = 0
val op div = op *
fun op + (x, y) = op @ (y, x)
fun op div (x, y) = x * y
Синтаксис fun
также позволяет использовать инфиксные операторы для определений, как:
fun x / y = x * y
Fwiw, вы также можете определить свои собственные инфиксные операторы:
infix ++
fun x ++ y = (x + y) - 1
infix times
fun x times y = x * y
Редактировать: Вы также можете удалить инфиксный статус, объявив его nonfix
:
nonfix div
fun div x = 1/x