Scilla : a Smart Contract Intermediate-Level LAnguage Automata for Smart Contract Implementation and Verification
Dijkstra monads for free