Next: , Previous: CHP Lexical Conventions, Up: CHP


12.2 CHP Grammar

Nondeterministic selections are delimited by : in HAC, whereas they were delimited by | in CAST.

In CAST, send and receive actions were written as: ‘X!x’ or ‘Y!z’, but in HAC, send and receive arguments must be enclosed within parenthesis like function call arguments: ‘X!(x)’ or ‘Y!(z)’. Rationale: syntactic consistency and disambiguation with the concurrency operator (comma).

HAC supports receive actions that do not write to any variables. ‘Y?’ acknowledges channel Y without writing its values.