Safe Haskell | Safe-Infered |
---|
- data OI a
- type :-> a b = OI a -> b
- run :: (OI a -> b) -> IO b
- (=:) :: a -> OI a -> a
- (??) :: OI a -> a
- dePair :: OI (a, b) -> (OI a, OI b)
- deList :: OI [a] -> Maybe (OI a, OI [a])
- deTriple :: OI (a, b, c) -> (OI a, OI b, OI c)
- deTuple4 :: OI (a, b, c, d) -> (OI a, OI b, OI c, OI d)
- deTuple5 :: OI (a, b, c, d, e) -> (OI a, OI b, OI c, OI d, OI e)
- deTuple6 :: OI (a, b, c, d, e, f) -> (OI a, OI b, OI c, OI d, OI e, OI f)
- deTuple7 :: OI (a, b, c, d, e, f, g) -> (OI a, OI b, OI c, OI d, OI e, OI f, OI g)
- deLeft :: OI (Either a b) -> Either (OI a) (OI b)
- deRight :: OI (Either a b) -> Either (OI a) (OI b)
- data IOResult a
- iooi :: IO a -> OI a -> a
- iooi' :: IO a -> OI (IOResult a) -> IOResult a
- forces :: [()] -> ()
- force :: a -> ()
- split :: a -> (a, ())
Interaction datatypes
Drive an interaction
Primitive operators on OI
Splitter against OI
deTuple6 :: OI (a, b, c, d, e, f) -> (OI a, OI b, OI c, OI d, OI e, OI f)Source
Decomposer for 6-tuple
deTuple7 :: OI (a, b, c, d, e, f, g) -> (OI a, OI b, OI c, OI d, OI e, OI f, OI g)Source
Decomposer for 7-tuple