| |||||||||||||||||||||||||
| |||||||||||||||||||||||||
| |||||||||||||||||||||||||
| 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 |