Invoke : <Address>
Protocol.Message1 : 1 ; Сообщение
[Param1 : <значение>
...]
[Await : Message : Generation
[Param : -> ?variable
...]
]
[Последующая конструкция]
Инструкция предполагает отправку сообщения на указанный адрес и ожидание соответствующего ответа. По сути, является компактной записью пары Send .. Receive. Какой ответ необходимо ожидать может быть задано явным указанием с помощью конструкции Await. Особенность инструкции в том, что она умеет автоматически выводить тип сообщения ответа по стандарту именования. Например, Kernel.Stack.Push -> Kernel.Stack.PushAnswer. В таком случае строку Await может не указываться.
Invoke : <RootsStack>
Kernel.Stack.Push : 1 ;
Object : ?activator.FileName
Send : <FileSystem>
Kernel.FileSystem.FindNext : 2
SearchIndex : <SearchIndex>
Результат:
Аналогично конструкции:
Send : <RootsStack>
Kernel.Stack.Push : 1 ;
Object : ?activator.FileName
Receive
01 : *
Kernel.Stack.PushAnswer : 1
Send : <FileSystem>
Kernel.FileSystem.FindNext : 2
SearchIndex : <SearchIndex>