author | oheimb |
Mon, 06 Sep 1999 18:18:09 +0200 | |
changeset 7491 | 95a4af0e10a7 |
parent 5324 | ec84178243ff |
child 10025 | a281d157ccdf |
permissions | -rw-r--r-- |
wenzelm@4417 | 1 |
# |
wenzelm@4417 | 2 |
# $Id$ |
wenzelm@4417 | 3 |
# |
wenzelm@4417 | 4 |
# expandshort.pl - expand shorthand goal commands |
wenzelm@4417 | 5 |
# |
paulson@4478 | 6 |
# in "be ... i;" -> "by (etac ... i);" the "..." phrase is not allowed to |
paulson@4478 | 7 |
# contain punctuation. Otherwise, comments can be affected! |
paulson@5324 | 8 |
# a special case is made to detect be alpha.alpha digits |
wenzelm@4417 | 9 |
|
wenzelm@4417 | 10 |
sub expandshort { |
wenzelm@4417 | 11 |
my ($file) = @_; |
wenzelm@4417 | 12 |
|
wenzelm@4417 | 13 |
open (FILE, $file) || die $!; |
wenzelm@4417 | 14 |
undef $/; $text = <FILE>; $/ = "\n"; # slurp whole file |
wenzelm@4417 | 15 |
close FILE || die $!; |
wenzelm@4417 | 16 |
|
wenzelm@4417 | 17 |
$_ = $text; |
wenzelm@4417 | 18 |
|
wenzelm@4417 | 19 |
s/\bsafe_tac *\(claset *\( *\) *\)/Safe_tac/sg; |
paulson@4592 | 20 |
s/ *\(Safe_tac\) *([0-9]+)/ Safe_tac $1/sg; |
wenzelm@4417 | 21 |
s/ *\(Safe_tac\)/ Safe_tac/sg; |
wenzelm@4417 | 22 |
s/\bby\(/by (/sg; |
paulson@4592 | 23 |
s/\bba\b *(\d+);/by (assume_tac $1);/sg; |
paulson@5324 | 24 |
s/\bbr\b *([^;*!]*) (\d+);/by (rtac $1 $2);/sg; |
paulson@5324 | 25 |
s/\bbrs\b *([^;*!]*) (\d+);/by (resolve_tac $1 $2);/sg; |
paulson@5324 | 26 |
s/\bbd\b *([^;*!]*) (\d+);/by (dtac $1 $2);/sg; |
paulson@5324 | 27 |
s/\bbds\b *([^;*!]*) (\d+);/by (dresolve_tac $1 $2);/sg; |
paulson@4592 | 28 |
s/\bbe\b *([^;.*!]*) (\d+);/by (etac $1 $2);/sg; |
paulson@5324 | 29 |
s/\bbe\b *(\w+\.\w+) (\d+);/by (etac $1 $2);/sg; |
paulson@5324 | 30 |
s/\bbes\b *([^;*!]*) (\d+);/by (eresolve_tac $1 $2);/sg; |
paulson@5324 | 31 |
s/\bbw\b *([^;*!]*);/by (rewtac $1);/sg; |
paulson@5324 | 32 |
s/\bbws\b *([^;*!]*);/by (rewrite_goals_tac $1);/sg; |
paulson@4478 | 33 |
s/\bauto *\(\)/by Auto_tac/sg; |
paulson@4592 | 34 |
s/dresolve_tac *\[(\w+)\] */dtac $1 /sg; |
paulson@4592 | 35 |
s/eresolve_tac *\[(\w+)\] */etac $1 /sg; |
oheimb@7491 | 36 |
s/forward_tac *\[(\w+)\] */ftac $1 /sg; |
paulson@4592 | 37 |
s/resolve_tac *\[(\w+)\] */rtac $1 /sg; |
paulson@4592 | 38 |
s/rewrite_goals_tac *\[(\w+)\]( *)/rewtac $1$2/sg; |
paulson@4592 | 39 |
s/rtac *\((\w+)\s+RS\s+ssubst\)\s+/stac $1 /sg; |
wenzelm@4417 | 40 |
|
wenzelm@4417 | 41 |
$result = $_; |
wenzelm@4417 | 42 |
|
wenzelm@4417 | 43 |
if ($text ne $result) { |
wenzelm@4417 | 44 |
print STDERR "expanding $file\n"; |
wenzelm@4417 | 45 |
if (! -f "$file~~") { |
wenzelm@4417 | 46 |
rename $file, "$file~~" || die $!; |
wenzelm@4417 | 47 |
} |
wenzelm@4417 | 48 |
open (FILE, "> $file") || die $!; |
wenzelm@4417 | 49 |
print FILE $result; |
wenzelm@4417 | 50 |
close FILE || die $!; |
wenzelm@4417 | 51 |
} |
wenzelm@4417 | 52 |
} |
wenzelm@4417 | 53 |
|
wenzelm@4417 | 54 |
|
wenzelm@4417 | 55 |
## main |
wenzelm@4417 | 56 |
|
wenzelm@4417 | 57 |
foreach $file (@ARGV) { |
wenzelm@4417 | 58 |
eval { &expandshort($file); }; |
wenzelm@4417 | 59 |
if ($@) { print STDERR "*** expandshort $file: ", $@, "\n"; } |
wenzelm@4417 | 60 |
} |