lib/scripts/unsymbolize.pl
author wenzelm
Mon, 11 Dec 2000 20:08:19 +0100
changeset 10639 f902346264e9
parent 10506 01333dbe1431
child 13184 197e5a88c9df
permissions -rw-r--r--
harpoons;
     1 #
     2 # $Id$
     3 # Author: Markus Wenzel, TU Muenchen
     4 # License: GPL (GNU GENERAL PUBLIC LICENSE)
     5 #
     6 # unsymbolize.pl - remove unreadable symbol names from sources
     7 #
     8 
     9 sub unsymbolize {
    10     my ($file) = @_;
    11 
    12     open (FILE, $file) || die $!;
    13     undef $/; $text = <FILE>; $/ = "\n";         # slurp whole file
    14     close FILE || die $!;
    15 
    16     $_ = $text;
    17 
    18     # Pure
    19     s/\\?\\<And>/!!/g;
    20     s/\\?\\<Colon>/::/g;
    21     s/\\?\\<Longrightarrow>/==>/g;
    22     s/\\?\\<Midarrow>\\?\\<Rightarrow>/==>/g;
    23     s/\\?\\<Rightarrow>/=>/g;
    24     s/\\?\\<equiv>/==/g;
    25     s/\\?\\<dots>/.../g;
    26     s/\\?\\<lbrakk> ?/[| /g;
    27     s/\\?\\ ?<rbrakk>/ |]/g;
    28     s/\\?\\<lparr> ?/(| /g;
    29     s/\\?\\ ?<rparr>/ |)/g;
    30     # HOL
    31     s/\\?\\<longrightarrow>/-->/g;
    32     s/\\?\\<midarrow>\\?\\<rightarrow>/-->/g;
    33     s/\\?\\<rightarrow>/->/g;
    34     s/\\?\\<epsilon> ?/SOME /g;
    35     # outer syntax
    36     s/\\?\\<rightleftharpoons>/==/g;
    37     s/\\?\\<rightharpoonup>/=>/g;
    38     s/\\?\\<leftharpoondown>/<=/g;
    39 
    40     $result = $_;
    41 
    42     if ($text ne $result) {
    43 	print STDERR "fixing $file\n";
    44         if (! -f "$file~~") {
    45 	    rename $file, "$file~~" || die $!;
    46         }
    47 	open (FILE, "> $file") || die $!;
    48 	print FILE $result;
    49 	close FILE || die $!;
    50     }
    51 }
    52 
    53 
    54 ## main
    55 
    56 foreach $file (@ARGV) {
    57   eval { &unsymbolize($file); };
    58   if ($@) { print STDERR "*** unsymbolize $file: ", $@, "\n"; }
    59 }