This naughts-and-crosses game is implemented in Clojurescript using Om and core.async. See Github for the source.

-Nat EP