diff options
| author | Arnaud Bailly <arnaud@pankzsoft.com> | 2025-11-02 21:35:19 +0100 |
|---|---|---|
| committer | Arnaud Bailly <arnaud@pankzsoft.com> | 2025-11-02 21:35:19 +0100 |
| commit | fc00cff556372e914d3cf15c39700b4ff7c3541c (patch) | |
| tree | 52a66d4e02a6f22748331b7eee72892e378a548b /lambda-calcul/haskell/src/Minilang/Lambda/Infer.hs | |
| parent | 1294be22324f012e96fd1b9d5935563505c080be (diff) | |
| download | lambda-nantes-fc00cff556372e914d3cf15c39700b4ff7c3541c.tar.gz | |
better rendering for type errors and evaluation
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 2e1814e..ab590c6 100644 --- a/lambda-calcul/haskell/src/Minilang/Lambda/Infer.hs +++ b/lambda-calcul/haskell/src/Minilang/Lambda/Infer.hs @@ -14,6 +14,7 @@ import GHC.Generics (Generic) import qualified Minilang.Lambda.Eval as Eval import Minilang.Lambda.Unify (Type (..), UnifyError, apply, unify) import Prelude hiding (lookup) +import qualified Minilang.Lambda.Unify as Unify data ATerm ann = Var Text ann @@ -25,6 +26,9 @@ data TypeError = UnifyError UnifyError deriving (Show, Eq) +render :: TypeError -> Text +render (UnifyError ue) = Unify.render ue + fromTerm :: Eval.Term -> ATerm () fromTerm (Eval.Var x) = Var x () fromTerm (Eval.Lam x body) = Lam x (fromTerm body) () |
