
On Mon, Dec 19, 2005 at 09:34:19AM -0000, Simon Peyton-Jones wrote:
waitUntil sounds like a plausible name.
But how do I name "itsBefore"? dontWaitUntil? ;-)
Better than itsAfter or timeAfter.
But perhaps sleepUntil would be better, because it's a variant of sleep?
Well yes, but an STM compatible one, so you can simultaneously waitUntil and try to read from channel, and you get whatever happens first. Also, the interface is entirely in STM - no need to initialize the timer in IO. Simon Marlow gave a nice example for usefulness of this:
Interesting. You could use that do wait for idle time, for example:
atomically $ do t <- readTVar last_mouse_click waitUntil (t+1000) ...
so this transaction only completes when some idle time has passed since the last mouse click.
Let's assume I am going to implement itsBefore (seems to be quite straightforward), so I want a pair of opposite names. Some variations: itsAfter / itsBefore guardTimeAfter / guardTimeBefore waitUntil / ??? Best regards Tomasz -- I am searching for a programmer who is good at least in some of [Haskell, ML, C++, Linux, FreeBSD, math] for work in Warsaw, Poland