AlacrisIO / meta

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

Reify program state as implicit argument passed to Interact #118

Open fare opened 5 years ago

fare commented 5 years ago

Alacrity's interact primitive should take the following explicit arguments:

However, the generated code should also include an implicit argument, which is the entire reified state of the DApp, which for now consists in all variable bindings, as well as a mapping from source variable to generated variable. In the future, the state may also include control frames that recursively contain more bindings and frames, as well as heap information, etc. Thus, the frontend application or other back-program (to reuse terminology from my thesis) possesses complete context to present to the human user (or automated agent) to make an informed decision in choosing their next action.

mattaudesse commented 5 years ago

FWIW I love the reified state idea, and that'll be a big deal for implementers creating the end-user apps that sit atop their Alacrity code.