⛅ Coming soon: create Unison Cloud clusters in minutes on your own infrastructure. Learn more

Operator definitions

Operator identifiers are valid names for Unison definitions, but the syntax for defining them is slightly different. For example, we could define a binary operator **:

(**) x y = Float.pow x y

Or we could define it using infix notation:

x ** y = pow x y

If we want to give the operator a qualified name, we put the qualifier inside the parentheses:

(MyNamespace.**) x y = Float.pow x y

Or if defining it infix:

x MyNamespace.** y = pow x y

The operator can be applied using either notation, no matter which way it's defined. See function application for details.