event-signature '[' guard-condition ']' '/' action-expression 'send' send-clause
event-name '(' parameter ',' ...')' e.g.: draw (f: Figure, c: Colour)
[
' and ']
':
e.g.: [balance >= amount]
/
';
e.g.: increase () / n := n+1 / m := m+1
send
, may have a destination expression followed by '.
' and the destination event name with comma separated argument list in parentheses:
'send' destination-expression '.' destination-event-name '(' argument ',' ...')' e.g.: send self.go down (first floor)
parameter
:
Parameter-name ':' type-expression, Parameter-name ':' type-expression ...