utt/nawszelkiwypadek/tools/cor_dic/prep.pl

68 lines
1.1 KiB
Perl
Executable File

#! /usr/bin/perl
use locale;
use strict;
my $file = shift;
if ($file eq "") {
print "Podaj nazwê pliku.\n";
exit(0);
}
`makeLabels.pl > labels.sym`;
`lexmakelab labels`;
print "Pobieram informacje ze s³ownika..........................";
`cut -d \\; -f 1 <$file > temp1`;
`sort -u < temp1 > temp2`;
print "OK\n";
print "Kompilujê automat........................................";
`lexcomplex -l labels.lab -S labels.scl <temp2 > temp1`;
print "OK\n";
print "Usuwam epsilon-przejscia.................................";
`fsmrmepsilon temp1> temp2`;
print "OK\n";
print "Determinizujê automat....................................";
`fsmdeterminize temp2 > temp1`;
print "OK\n";
print "Minimalizujê automat.....................................";
`fsmminimize temp1> temp2`;
print "OK\n";
print "Konwertujê automat do formatu fsa........................";
`fsmprint -i labels.lab temp2> temp1`;
`../fsm2aut temp1> temp2`;
`../aut2fsa < temp2> cor.dic`;
print "OK\n";
print "Czyszczê pliki pomocnicze................................";
`rm temp2`;
`rm temp1`;
`rm labels.*`;
print "OK\n";