| |||||||||||||||||||||||||
| |||||||||||||||||||||||||
| |||||||||||||||||||||||||
Description | |||||||||||||||||||||||||
Concurrent ML library. This library provides first-class synchronous events in the style of CML (http://cml.cs.uchicago.edu/). This library implements the full CML interface, including the withNack combinator. | |||||||||||||||||||||||||
Synopsis | |||||||||||||||||||||||||
| |||||||||||||||||||||||||
TxEvent type | |||||||||||||||||||||||||
type Evt a = IO ([AckVar], Evt ([AckVar], IO a)) | |||||||||||||||||||||||||
TxEvent combinators | |||||||||||||||||||||||||
alwaysEvt :: a -> Evt a | |||||||||||||||||||||||||
wrapEvt :: Evt a -> (a -> IO b) -> Evt b | |||||||||||||||||||||||||
guardEvt :: IO (Evt a) -> Evt a | |||||||||||||||||||||||||
withNackEvt :: (Evt () -> IO (Evt a)) -> Evt a | |||||||||||||||||||||||||
neverEvt :: Evt a | |||||||||||||||||||||||||
chooseEvt :: Evt a -> Evt a -> Evt a | |||||||||||||||||||||||||
sync :: Evt a -> IO a | |||||||||||||||||||||||||
Synchronous channels | |||||||||||||||||||||||||
type SChan a = SChan a | |||||||||||||||||||||||||
newSChan :: IO (SChan a) | |||||||||||||||||||||||||
sendEvt :: SChan a -> a -> Evt () | |||||||||||||||||||||||||
recvEvt :: SChan a -> Evt a | |||||||||||||||||||||||||
Time delays | |||||||||||||||||||||||||
timeOutEvt :: Int -> Evt () | |||||||||||||||||||||||||
Produced by Haddock version 0.7 |