diff options
| author | Arnaud Bailly <arnaud@pankzsoft.com> | 2025-11-06 08:35:36 +0100 |
|---|---|---|
| committer | Arnaud Bailly <arnaud@pankzsoft.com> | 2025-11-06 08:35:36 +0100 |
| commit | b87d5b45110cd7efe7109dd6d4e9c19ef28522aa (patch) | |
| tree | 2fd831c479523b8a77d6a721e00ec5b610a7b111 /lambda-calcul/haskell/src/Minilang/Lambda/Infer.hs | |
| parent | 6d35fd9630238375cc28a282780f597421107469 (diff) | |
| download | lambda-nantes-b87d5b45110cd7efe7109dd6d4e9c19ef28522aa.tar.gz | |
evaluate terms when defining them
Diffstat (limited to 'lambda-calcul/haskell/src/Minilang/Lambda/Infer.hs')
| -rw-r--r-- | lambda-calcul/haskell/src/Minilang/Lambda/Infer.hs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lambda-calcul/haskell/src/Minilang/Lambda/Infer.hs b/lambda-calcul/haskell/src/Minilang/Lambda/Infer.hs index ab590c6..2052398 100644 --- a/lambda-calcul/haskell/src/Minilang/Lambda/Infer.hs +++ b/lambda-calcul/haskell/src/Minilang/Lambda/Infer.hs @@ -61,6 +61,10 @@ data Context = Context } deriving (Eq, Show, Generic, ToJSON, FromJSON) +extendContext :: Text -> Type -> Context -> Context +extendContext x ty (Context n env) = + Context n (Map.insert x ty env) + annotate :: Eval.Term -> Either TypeError (ATerm Type) annotate t = evalStateT (go (fromTerm t) []) newContext |
