1
1
mirror of https://github.com/github/semantic.git synced 2025-01-03 04:51:57 +03:00

📝 TermEvaluator.

This commit is contained in:
Rob Rix 2018-05-15 12:59:47 -04:00
parent dcaad09deb
commit 7e190024f8

View File

@ -16,6 +16,9 @@ import Control.Monad.Effect.State as X
import Control.Monad.Effect.Trace as X
import Prologue
-- | Evaluators specialized to some specific term type.
--
-- This is used to constrain the term type so that inference for analyses can resolve it correctly, but should not be used for any of the term-agonstic machinery like builtins, Evaluatable instances, the mechanics of the heap & environment, etc.
newtype TermEvaluator term location value effects a = TermEvaluator { runTermEvaluator :: Evaluator location value effects a }
deriving (Applicative, Effectful, Functor, Monad)