DeepDarkFantasy-0.2017.4.9: A DSL for creating neural network.
DDF.Eval
newtype Eval h x Source #
Constructors
Fields
Instances
Methods
z :: Eval (a, h) a Source #
s :: Eval h b -> Eval (a, h) b Source #
abs :: Eval (a, h) b -> Eval h (a -> b) Source #
app :: Eval h (a -> b) -> Eval h a -> Eval h b Source #
hoas :: (Eval (a, h) a -> Eval (a, h) b) -> Eval h (a -> b) Source #
com :: Eval h ((b -> c) -> (a -> b) -> a -> c) Source #
flip :: Eval h ((a -> b -> c) -> b -> a -> c) Source #
id :: Eval h (a -> a) Source #
const :: Eval h (a -> b -> a) Source #
scomb :: Eval h ((a -> b -> c) -> (a -> b) -> a -> c) Source #
dup :: Eval h ((a -> a -> b) -> a -> b) Source #
let_ :: Eval h (a -> (a -> b) -> b) Source #
double :: Double -> Eval h Double Source #
doubleZero :: Eval h Double Source #
doubleOne :: Eval h Double Source #
doublePlus :: Eval h (Double -> Double -> Double) Source #
doubleMinus :: Eval h (Double -> Double -> Double) Source #
doubleMult :: Eval h (Double -> Double -> Double) Source #
doubleDivide :: Eval h (Double -> Double -> Double) Source #
doubleExp :: Eval h (Double -> Double) Source #
float :: Float -> Eval h Float Source #
floatZero :: Eval h Float Source #
floatOne :: Eval h Float Source #
floatPlus :: Eval h (Float -> Float -> Float) Source #
floatMinus :: Eval h (Float -> Float -> Float) Source #
floatMult :: Eval h (Float -> Float -> Float) Source #
floatDivide :: Eval h (Float -> Float -> Float) Source #
floatExp :: Eval h (Float -> Float) Source #
nothing :: Eval h (Maybe a) Source #
just :: Eval h (a -> Maybe a) Source #
optionMatch :: Eval h (b -> (a -> b) -> Maybe a -> b) Source #
mkProd :: Eval h (a -> b -> (a, b)) Source #
zro :: Eval h ((a, b) -> a) Source #
fst :: Eval h ((a, b) -> b) Source #
swap :: Eval h ((x, y) -> (y, x)) Source #
curry :: Eval h (((a, b) -> c) -> a -> b -> c) Source #
uncurry :: Eval h ((a -> b -> c) -> (a, b) -> c) Source #
dual :: Eval h ((x, y) -> Dual x y) Source #
runDual :: Eval h (Dual x y -> (x, y)) Source #
mkDual :: Eval h (x -> y -> Dual x y) Source #
dualOrig :: Eval h (Dual x y -> x) Source #
dualDiff :: Eval h (Dual x y -> y) Source #
empty :: Eval h (Map k a) Source #
singleton :: Eval h (k -> a -> Map k a) Source #
lookup :: Ord k => Eval h (k -> Map k a -> Maybe a) Source #
alter :: Ord k => Eval h ((Maybe a -> Maybe a) -> k -> Map k a -> Map k a) Source #
mapMap :: Eval h ((a -> b) -> Map k a -> Map k b) Source #
char :: Char -> Eval h Char Source #
bool :: Bool -> Eval h Bool Source #
ite :: Eval h (a -> a -> Bool -> a) Source #
fix :: Eval h ((a -> a) -> a) Source #
left :: Eval h (a -> Either a b) Source #
right :: Eval h (b -> Either a b) Source #
sumMatch :: Eval h ((a -> c) -> (b -> c) -> Either a b -> c) Source #
unit :: Eval h () Source #
exfalso :: Eval h (Void -> a) Source #
ioRet :: Eval h (a -> IO a) Source #
ioBind :: Eval h (IO a -> (a -> IO b) -> IO b) Source #
ioMap :: Eval h ((a -> b) -> IO a -> IO b) Source #
nil :: Eval h [a] Source #
cons :: Eval h (a -> [a] -> [a]) Source #
listMatch :: Eval h (b -> (a -> [a] -> b) -> [a] -> b) Source #
listAppend :: Eval h ([a] -> [a] -> [a]) Source #
writer :: Eval h ((a, w) -> Writer w a) Source #
runWriter :: Eval h (Writer w a -> (a, w)) Source #
float2Double :: Eval h (Float -> Double) Source #
double2Float :: Eval h (Double -> Float) Source #
undefined :: Eval h a Source #
state :: Eval h ((x -> (y, x)) -> State x y) Source #
runState :: Eval h (State x y -> x -> (y, x)) Source #
putStrLn :: Eval h (String -> IO ()) Source #
comb :: x -> Eval h x Source #