The actions could be lambdas to make it a closer translation, but I probably wouldn't. The library uses 'greenlet' for the continuation-y functionality.
What happens in Arc in more complex examples if I re-click a state-changing-link that's already been clicked?