Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Copilot.Language.Stream
Description
Abstract syntax for streams and operators.
Documentation
data Stream :: * -> * where Source #
Constructors
Append :: Typed a => [a] -> Maybe (Stream Bool) -> Stream a -> Stream a | |
Const :: Typed a => a -> Stream a | |
Drop :: Typed a => Int -> Stream a -> Stream a | |
Extern :: Typed a => String -> Maybe [a] -> Stream a | |
Local :: (Typed a, Typed b) => Stream a -> (Stream a -> Stream b) -> Stream b | |
Var :: Typed a => String -> Stream a | |
Op1 :: (Typed a, Typed b) => Op1 a b -> Stream a -> Stream b | |
Op2 :: (Typed a, Typed b, Typed c) => Op2 a b c -> Stream a -> Stream b -> Stream c | |
Op3 :: (Typed a, Typed b, Typed c, Typed d) => Op3 a b c d -> Stream a -> Stream b -> Stream c -> Stream d | |
Label :: Typed a => String -> Stream a -> Stream a |