Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Interpreter for L1
Synopsis
- interpProg :: Interp () e => RunConfig -> Prog e -> IO ((), Value e, ByteString)
- 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))
- 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))
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 #