#!/usr/bin/perl -w my $CP1 = shift; my $CP2 = shift; # align my $i = 1; my $j; `ln -s $CP1 $CP1.$i`; `ln -s $CP2 $CP2.$i`; for (;;) { print STDERR "Aligning $CP1.$i and $CP2.$i\n"; `nat-these -noint -delete $CP1.$i $CP2.$i`; # extract dictionary print STDERR "Extracting dictionary $i\n"; `./anal $CP1.$i-$CP2.$i/$CP1.$i.bin $CP1.$i-$CP2.$i/$CP1.$i.lex $CP1.$i-$CP2.$i/$CP2.$i.bin $CP1.$i-$CP2.$i/$CP2.$i.lex > DICT.$i`; # extract word lists print STDERR "Extracting words list $i\n"; `./load_ DICT.$i 1 > WORDS-$CP1.$i`; `./load_ DICT.$i 2 > WORDS-$CP2.$i`; # check if we must exit $lines = `wc -l WORDS-$CP1.$i`; $lines =~ m!\d+!; exit unless $& > 1; $j = $i + 1; # substitute print STDERR "Substituting corpus ($i)\n"; `cat $CP1.$i | ./substitute WORDS-$CP1.$i > $CP1.$j`; `cat $CP2.$i | ./substitute WORDS-$CP2.$i > $CP2.$j`; $i = $j; }