dvda-0.3: Efficient automatic differentiation and code generation

Safe HaskellNone

Dvda.Reify

Synopsis

Documentation

class MuRef a whereSource

Associated Types

type DeRef a :: * -> *Source

Methods

mapDeRef :: Applicative f => (forall b. (MuRef b, DeRef a ~ DeRef b) => b -> f u) -> a -> f (DeRef a u)Source

Instances

MuRef (Expr a) 

data ReifyGraph e Source

Constructors

ReifyGraph [(Unique, e Unique)] 

Instances

Show (e Int) => Show (ReifyGraph e)

If e is s Functor, and e is Show-able, then we can Show a Graph.

reifyGraphs :: (MuRef s, Traversable t) => [t s] -> IO (ReifyGraph (DeRef s), [t Int])Source

reifyGraph takes a data structure that admits MuRef, and returns a ReifyGraph that contains the dereferenced nodes, with their children as Int rather than recursive values.