gibbon-0.3: A compiler for operating on serialized data
Safe HaskellSafe-Inferred
LanguageHaskell2010

Gibbon.L1.Interp

Description

Interpreter for L1

Synopsis

Documentation

interpProg :: Interp () e => RunConfig -> Prog e -> IO ((), Value e, ByteString) Source #

Interpret a program, including printing timings to the screen. The returned bytestring contains that printed timing info.

interp :: forall e l d s. (Show l, Ord l, NFData l, Out l, Show d, NFData d, Out d, Ord d, Ord (e l d), NFData (e l d), InterpExt s (PreExp e l d) (e l d)) => RunConfig -> ValEnv (PreExp e l d) -> DDefs (TyOf (PreExp e l d)) -> FunDefs (PreExp e l d) -> PreExp e l d -> InterpM s (PreExp e l d) (Value (PreExp e l d)) Source #

applyPrim :: (Show ty, Ord l, Out l, Show l, Show d, Out d, Ord d, Ord (e l d), Out (e l d), Show (e l d)) => RunConfig -> Prim ty -> [Value (PreExp e l d)] -> InterpM s (PreExp e l d) (Value (PreExp e l d)) Source #

Orphan instances

Interp () Exp1 Source # 
Instance details

InterpProg () Exp1 Source # 
Instance details

InterpExt () Exp1 (E1Ext () Ty1) Source # 
Instance details