mirror of
https://github.com/github/semantic.git
synced 2024-12-23 06:41:45 +03:00
Evaluating has a linker effect
This commit is contained in:
parent
d1bedfb793
commit
e7c4f6e4ae
@ -2,6 +2,7 @@
|
|||||||
module Analysis.Abstract.Evaluating3 where
|
module Analysis.Abstract.Evaluating3 where
|
||||||
|
|
||||||
import Control.Effect
|
import Control.Effect
|
||||||
|
import Control.Monad.Effect (Eff, Members)
|
||||||
import Control.Monad.Effect.Fail
|
import Control.Monad.Effect.Fail
|
||||||
import Control.Monad.Effect.Reader
|
import Control.Monad.Effect.Reader
|
||||||
import Control.Monad.Effect.Store2
|
import Control.Monad.Effect.Store2
|
||||||
@ -21,14 +22,17 @@ import qualified Data.Map as Map
|
|||||||
import Data.Semigroup
|
import Data.Semigroup
|
||||||
import Prelude hiding (fail)
|
import Prelude hiding (fail)
|
||||||
import Data.Blob
|
import Data.Blob
|
||||||
|
import Data.Maybe (fromMaybe)
|
||||||
import System.FilePath.Posix
|
import System.FilePath.Posix
|
||||||
|
|
||||||
|
|
||||||
-- | The effects necessary for concrete interpretation.
|
-- | The effects necessary for concrete interpretation.
|
||||||
type Evaluating term v
|
type Evaluating term v
|
||||||
= '[ Fail
|
= '[ Fail
|
||||||
, State (Store (LocationFor v) v)
|
, State (Store (LocationFor v) v)
|
||||||
, State (EnvironmentFor v)
|
, State (EnvironmentFor v)
|
||||||
, Reader (EnvironmentFor v)
|
, Reader (EnvironmentFor v)
|
||||||
|
, Reader (Linker v)
|
||||||
]
|
]
|
||||||
|
|
||||||
-- | Evaluate a term to a value.
|
-- | Evaluate a term to a value.
|
||||||
|
Loading…
Reference in New Issue
Block a user