funcons-tools-0.1.0.0: cbs/Funcons/Core/Computations/DataFlow/Interacting/Print.hs
-- GeNeRaTeD fOr: ../../CBS/Funcons/Computations/Data flow/Interacting/print.aterm
{-# LANGUAGE OverloadedStrings #-}
module Funcons.Core.Computations.DataFlow.Interacting.Print where
import Funcons.EDSL
entities = []
types = typeEnvFromList
[]
funcons = libFromList
[("print",StrictFuncon stepPrint)]
-- |
-- /print(E)/ evaluates /E/ and emits the resulting value
-- on the /standard-out/ .
print_ fargs = FApp "print" (FTuple fargs)
stepPrint fargs =
evalRules [] [step1]
where step1 = do
let env = emptyEnv
env <- lifted_vsMatch fargs [VPAnnotated (VPMetaVar "V") (TName "values")] env
writeOutTerm "standard-out" (TList [TVar "V"]) env
stepTo (FTuple [])