Commit 28b75cf5 authored by Kim Nguyễn's avatar Kim Nguyễn
Browse files

Do not call Arrow.apply since the types bound to the variable Gamma will be...

Do not call Arrow.apply since the types bound to the variable Gamma will be the result of the application.
parent 1d82d5dc
......@@ -3221,13 +3221,17 @@ let apply_full s t =
cap tacc (List.fold_left (fun tacc subst ->
Positive.substitute tacc subst) t constr_lst)) any subst_lst
in
let arr = Arrow.get ss in
let res = Arrow.apply arr (tt) in
(*let arr = Arrow.get ss in
let res = Arrow.apply arr (tt) in *)
let ss = Positive.clean_type ss in
let tt = Positive.clean_type tt in
let res = Positive.clean_type res in
Format.printf "sl = %a\nfunction type = %a\nargument type = %a\nresult type = %a\n\n%!"
Tallying.CS.pp_sl subst_lst Print.print ss Print.print tt Print.print res; res
(*let res = Positive.clean_type res in *)
let res2 = List.fold_left
(fun acc l -> cap acc (snd (List.find (fun (`Var v, _) -> 0 == String.compare v.Var.id "Gamma") l))) any subst_lst
in
let res2 = Positive.clean_type res2 in
Format.printf "sl = %a\nfunction type = %a\nargument type = %a\nresult type = %a\n%!"
Tallying.CS.pp_sl subst_lst Print.print ss Print.print tt Print.print res2; res2
let apply s t = fst (apply_raw s t)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment