Also, I don't think software implementation makes any real sense.
The data's in a register anyways in the real hardware, so abstracting temporal reasoning over it is only useful for experimenting with the concept, not for experimenting with the actual performance characteristics that make it interesting