If the display callback can modify an IORef, and if the keyboard callback can modify the same IORef, am I expected to have concurrency problems? (for example, when one callback tries to read the value of the IORef but the IORef is being modified by the other callback) Thanks, -- Andre