equal
deleted
inserted
replaced
78 let |
78 let |
79 fun invents n k nctxt = |
79 fun invents n k nctxt = |
80 let |
80 let |
81 val names = Name.invents nctxt n k; |
81 val names = Name.invents nctxt n k; |
82 in (names, fold Name.declare names nctxt) end; |
82 in (names, fold Name.declare names nctxt) end; |
83 val (((vs1, vs2), vs3), _) = Name.context |
83 val (((vs3, vs2), vs1), _) = Name.context |
84 |> invents Name.aT (length variances) |
84 |> invents Name.aT (length variances) |
85 ||>> invents Name.aT (length variances) |
85 ||>> invents Name.aT (length variances) |
86 ||>> invents Name.aT (length variances); |
86 ||>> invents Name.aT (length variances); |
87 fun mk_Ts vs = map2 (fn v => fn (sort, _) => TFree (v, sort)) |
87 fun mk_Ts vs = map2 (fn v => fn (sort, _) => TFree (v, sort)) |
88 vs variances; |
88 vs variances; |