Calls and Slot Access categories
Objects, Classes and Slots
Updates
Lists, Sets and Instructions
Lists, Sets and Tuples

Updates

Assigning a value to a variable is always done with the operator :=. This applies to local variables but also to the slots of an object. The value returned by the assignment is always the value that was assigned :
 x.age := 10John.father := mary
When the assignment depends on the former value of the variable, an implicit syntax ":op" can be used to combine the previous value with a new one using the operation op. This can be done with any (built-in or user-defined) operation (an operation is a function with arity 2 that has been explicitly declared as an operation) :
 x.age :+ 1John.friends :add maryx.price :min 100
Note that the use of :op is pure syntactical sugar: x.A :op y is equivalent to x.A := (x.A op y). The receiving expression should not, therefore, contain side-effects as in the dangerous following example :
 A(x :+ 1:+ 1