aqua-book/language/flow/README.md
2021-06-28 11:27:19 +00:00

799 B

Execution flow

Aqua's main goal is to express how the execution flows: moves from peer to peer, forks to parallel flows and then joins back, uses data from one step in another.

As the foundation of Aqua is based on π-calculus, finally flow is decomposed into sequential `seq`, `.`, conditional `xor`, `+`, parallel `par`, `|` computations and iterations based on data `!P`. For each basic way to organize the flow, Aqua follows a set of rules to execute the operations:

  • What data is available for use?
  • What data is exported and can be used below?
  • How errors and failures are handled?

These rules form a contract, as in design-by-contract programming.