equal
deleted
inserted
replaced
195 | _ => raise TERM (funerr, [f $ u])) |
195 | _ => raise TERM (funerr, [f $ u])) |
196 | _ => raise TERM (funerr, [f $ u])) |
196 | _ => raise TERM (funerr, [f $ u])) |
197 | fast Ts (Const (_, T)) = T |
197 | fast Ts (Const (_, T)) = T |
198 | fast Ts (Free (_, T)) = T |
198 | fast Ts (Free (_, T)) = T |
199 | fast Ts (Bound i) = |
199 | fast Ts (Bound i) = |
200 (nth_elem (i, Ts) |
200 (List.nth (Ts, i) |
201 handle LIST _=> raise TERM ("fastype: Bound", [Bound i])) |
201 handle Subscript => raise TERM ("fastype: Bound", [Bound i])) |
202 | fast Ts (Var (_, T)) = T |
202 | fast Ts (Var (_, T)) = T |
203 | fast Ts (Abs (_, T, u)) = T --> fast (T :: Ts) u |
203 | fast Ts (Abs (_, T, u)) = T --> fast (T :: Ts) u |
204 in fast end; |
204 in fast end; |
205 |
205 |
206 end; |
206 end; |