DeepDarkFantasy-0.2017.4.1: A DSL for creating neural network.

Safe HaskellSafe
LanguageHaskell2010

DDF.Combine

Documentation

data Combine l r h x Source #

Constructors

Combine (l h x) (r h x) 

Instances

(DBI l, DBI r) => DBI (Combine l r) Source # 

Methods

z :: Combine l r (a, h) a Source #

s :: Combine l r h b -> Combine l r (a, h) b Source #

abs :: Combine l r (a, h) b -> Combine l r h (a -> b) Source #

app :: Combine l r h (a -> b) -> Combine l r h a -> Combine l r h b Source #

hoas :: (Combine l r (a, h) a -> Combine l r (a, h) b) -> Combine l r h (a -> b) Source #

com :: Combine l r h ((b -> c) -> (a -> b) -> a -> c) Source #

flip :: Combine l r h ((a -> b -> c) -> b -> a -> c) Source #

id :: Combine l r h (a -> a) Source #

const :: Combine l r h (a -> b -> a) Source #

scomb :: Combine l r h ((a -> b -> c) -> (a -> b) -> a -> c) Source #

dup :: Combine l r h ((a -> a -> b) -> a -> b) Source #

let_ :: Combine l r h (a -> (a -> b) -> b) Source #

(Bool l, Bool r) => Bool (Combine l r) Source # 

Methods

bool :: Bool -> Combine l r h Bool Source #

ite :: Combine l r h (a -> a -> Bool -> a) Source #

(Lang l, Lang r) => Lang (Combine l r) Source # 

Methods

mkProd :: Combine l r h (a -> b -> (a, b)) Source #

zro :: Combine l r h ((a, b) -> a) Source #

fst :: Combine l r h ((a, b) -> b) Source #

double :: Double -> Combine l r h Double Source #

doubleZero :: Combine l r h Double Source #

doubleOne :: Combine l r h Double Source #

doublePlus :: Combine l r h (Double -> Double -> Double) Source #

doubleMinus :: Combine l r h (Double -> Double -> Double) Source #

doubleMult :: Combine l r h (Double -> Double -> Double) Source #

doubleDivide :: Combine l r h (Double -> Double -> Double) Source #

doubleExp :: Combine l r h (Double -> Double) Source #

float :: Float -> Combine l r h Float Source #

floatZero :: Combine l r h Float Source #

floatOne :: Combine l r h Float Source #

floatPlus :: Combine l r h (Float -> Float -> Float) Source #

floatMinus :: Combine l r h (Float -> Float -> Float) Source #

floatMult :: Combine l r h (Float -> Float -> Float) Source #

floatDivide :: Combine l r h (Float -> Float -> Float) Source #

floatExp :: Combine l r h (Float -> Float) Source #

fix :: Combine l r h ((a -> a) -> a) Source #

left :: Combine l r h (a -> Either a b) Source #

right :: Combine l r h (b -> Either a b) Source #

sumMatch :: Combine l r h ((a -> c) -> (b -> c) -> Either a b -> c) Source #

unit :: Combine l r h () Source #

exfalso :: Combine l r h (Void -> a) Source #

nothing :: Combine l r h (Maybe a) Source #

just :: Combine l r h (a -> Maybe a) Source #

optionMatch :: Combine l r h (b -> (a -> b) -> Maybe a -> b) Source #

ioRet :: Combine l r h (a -> IO a) Source #

ioBind :: Combine l r h (IO a -> (a -> IO b) -> IO b) Source #

ioMap :: Combine l r h ((a -> b) -> IO a -> IO b) Source #

nil :: Combine l r h [a] Source #

cons :: Combine l r h (a -> [a] -> [a]) Source #

listMatch :: Combine l r h (b -> (a -> [a] -> b) -> [a] -> b) Source #

listAppend :: Combine l r h ([a] -> [a] -> [a]) Source #

writer :: Combine l r h ((a, w) -> Writer w a) Source #

runWriter :: Combine l r h (Writer w a -> (a, w)) Source #

swap :: Combine l r h ((l, r) -> (r, l)) Source #

curry :: Combine l r h (((a, b) -> c) -> a -> b -> c) Source #

uncurry :: Combine l r h ((a -> b -> c) -> (a, b) -> c) Source #

float2Double :: Combine l r h (Float -> Double) Source #

double2Float :: Combine l r h (Double -> Float) Source #

undefined :: Combine l r h a Source #

state :: Combine l r h ((l -> (r, l)) -> State l r) Source #

runState :: Combine l r h (State l r -> l -> (r, l)) Source #