Safe Haskell | None |
---|---|
Language | Haskell2010 |
Test.Speculate.Misc
Description
Miscellaneous functions I still did not find a reasonable place to put them in.
- functions1 :: (Typeable a, Typeable b) => Expr -> [(Expr, a -> b)]
- functions2 :: (Typeable a, Typeable b, Typeable c) => Expr -> [(Expr, a -> b -> c)]
- functions3 :: (Typeable a, Typeable b, Typeable c, Typeable d) => Expr -> [(Expr, a -> b -> c -> d)]
- functions4 :: (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e) => Expr -> [(Expr, a -> b -> c -> d -> e)]
- fillings :: Expr -> [Expr] -> [Expr]
- expressionsOf :: [Expr] -> [[Expr]]
- valuedExpressionsOf :: Typeable a => [Expr] -> [[(Expr, a)]]
Documentation
functions3 :: (Typeable a, Typeable b, Typeable c, Typeable d) => Expr -> [(Expr, a -> b -> c -> d)] Source #
functions4 :: (Typeable a, Typeable b, Typeable c, Typeable d, Typeable e) => Expr -> [(Expr, a -> b -> c -> d -> e)] Source #
expressionsOf :: [Expr] -> [[Expr]] Source #
Given a list of atomic expressions, enumerate experssions by application
NOTE: for now, very inneficient
This function exists solely for documentation and will never actually be useful, as:
mapT fst $ classes
Will return as expressions that are semantially different (and is more efficient)
Eventually this function will be removed from Speculate
valuedExpressionsOf :: Typeable a => [Expr] -> [[(Expr, a)]] Source #
Given a list of atomic expressinos, enumerated expressions of a given type by application.
Never will be actually useful, see expressionsOf
.
Eventually this functino will be removed from Speculate