526 separated by blanks ***) |
526 separated by blanks ***) |
527 |
527 |
528 (*Calling this will generate the warning "Same as previous level" since |
528 (*Calling this will generate the warning "Same as previous level" since |
529 it affects nothing but the names of bound variables!*) |
529 it affects nothing but the names of bound variables!*) |
530 fun rename_tac str i = |
530 fun rename_tac str i = |
531 let val cs = explode str |
531 let val cs = Symbol.explode str |
532 in |
532 in |
533 if !Logic.auto_rename |
533 if !Logic.auto_rename |
534 then (warning "Resetting Logic.auto_rename"; |
534 then (warning "Resetting Logic.auto_rename"; |
535 Logic.auto_rename := false) |
535 Logic.auto_rename := false) |
536 else (); |
536 else (); |
537 case #2 (take_prefix (is_letdig orf is_blank) cs) of |
537 case #2 (take_prefix (Symbol.is_letdig orf Symbol.is_blank) cs) of |
538 [] => PRIMITIVE (rename_params_rule (scanwords is_letdig cs, i)) |
538 [] => PRIMITIVE (rename_params_rule (scanwords Symbol.is_letdig cs, i)) |
539 | c::_ => error ("Illegal character: " ^ c) |
539 | c::_ => error ("Illegal character: " ^ c) |
540 end; |
540 end; |
541 |
541 |
542 (*Rename recent parameters using names generated from a and the suffixes, |
542 (*Rename recent parameters using names generated from a and the suffixes, |
543 provided the string a, which represents a term, is an identifier. *) |
543 provided the string a, which represents a term, is an identifier. *) |