equal
deleted
inserted
replaced
428 Const (unproxify_const s', T) |
428 Const (unproxify_const s', T) |
429 in list_comb (t, term_ts @ extra_ts) end |
429 in list_comb (t, term_ts @ extra_ts) end |
430 end |
430 end |
431 | NONE => (* a free or schematic variable *) |
431 | NONE => (* a free or schematic variable *) |
432 let |
432 let |
433 val ts = map (do_term [] NONE) us @ extra_ts |
433 val term_ts = map (do_term [] NONE) us |
434 val T = map slack_fastype_of ts ---> HOLogic.typeT |
434 val ts = term_ts @ extra_ts |
|
435 val T = |
|
436 case opt_T of |
|
437 SOME T => map slack_fastype_of term_ts ---> T |
|
438 | NONE => map slack_fastype_of ts ---> HOLogic.typeT |
435 val t = |
439 val t = |
436 case strip_prefix_and_unascii fixed_var_prefix s of |
440 case strip_prefix_and_unascii fixed_var_prefix s of |
437 SOME s => |
441 SOME s => |
438 (* FIXME: reconstruction of lambda-lifting *) |
442 (* FIXME: reconstruction of lambda-lifting *) |
439 Free (s, T) |
443 Free (s, T) |