This module implements a deterministic, rectifying variant on Dijkstra's
guarded commands.  Each named step is passed two blocks: an "ensure"
block that defines a test for a necessary and sufficient condition of
the step, and a "using" block that will cause that condition to obtain.

WWW: https://metacpan.org/release/Commands-Guarded
