Added somewhat detailed README

This commit is contained in:
sebastian 2023-04-02 13:42:47 +02:00
parent aaaff776e0
commit 03a486410f
3 changed files with 210 additions and 7 deletions

View file

@ -159,10 +159,6 @@ checkBind (Bind name args e) = do
let m1 = M.fromList $ zip fvs1 letters
let t0 = replace m0 t'
let t1 = replace m1 lambda_t
ctrace "lambda" lambda_t
ctrace "t'" t'
ctrace "t0" t0
ctrace "t1" t1
unless
(t1 <<= t0)
( throwError $
@ -388,7 +384,6 @@ algoW = \case
(subst, injs, ret_t) <- checkCase t injs
let comp = subst `compose` sub
return (comp, apply comp (T.ECase (e', t) injs, ret_t))
EAppInf{} -> error "desugar phase failed"
checkCase :: Type -> [Branch] -> Infer (Subst, [T.Branch' Type], Type)
checkCase _ [] = catchableErr "Atleast one case required"