AlacrisIO / meta

Internal management of Legicash/Legilogic/Alacris
0 stars 0 forks source link

Get rid of `main {}` #155

Open fare opened 5 years ago

fare commented 5 years ago

In the long run, we want composable interactions, so that rock-paper-scissors can be the sub-interaction of something bigger. That means that describing interactions MUST NOT depend on a "main" block, but should be described in a function, and/or if a function is not enough, a "module" (in the style of OCaml and with the JavaScript-extending syntax of ReasonML) should encapsulate it.

The syntax issue is minor—the important part is understanding the semantic issue, how it enables composability of interactions, and how it affects their verification.