sub sequential { my $self = shift; my $sl_ctl = $self->{slctl}; my $sl_len = scalar(@$sl_ctl); my $mode = $self->{params}->{mode}; my $m_clust = $mt_param{$mode}->{cluster}; my @tl_rtl = (); &log("mt: entering sequential, mode >$mode<...\n"); $m_clust = &get_maxval([1, $m_clust]); for(my $i = 0; $i < $sl_len; $i++) { my $idx_la = &get_minval([$sl_len-1, $i + $m_clust]); my $phrase; my $rawtr; retry: &log("I: $i IDX_LA: $idx_la\n"); $phrase = join ' ', @$sl_ctl[$i..$idx_la]; $rawtr = $self->get_rawtr($phrase); if(@$rawtr) { my $disam = $self->disambiguate($phrase, $rawtr, $i,$idx_la); push @tl_rtl, $disam; } else { if($idx_la > $i) { $idx_la--; goto retry; } push @tl_rtl, $phrase; } $i = $idx_la; } @tl_rtl = &trim(@tl_rtl); $self->{tlrtl} = \@tl_rtl; return TRUE; }
Tue Feb 8 20:22:00 2005: mt: entering sequential, mode >level0<... Tue Feb 8 20:22:00 2005: I: 0 IDX_LA: 1 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >i am< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result ><. Tue Feb 8 20:22:00 2005: I: 0 IDX_LA: 0 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >i< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result >ich<. Tue Feb 8 20:22:00 2005: mt: disambig mode: >0< Tue Feb 8 20:22:00 2005: I: 1 IDX_LA: 2 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >am going< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result ><. Tue Feb 8 20:22:00 2005: I: 1 IDX_LA: 1 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >am< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result >bin<. Tue Feb 8 20:22:00 2005: mt: disambig mode: >0< Tue Feb 8 20:22:00 2005: I: 2 IDX_LA: 3 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >going to< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result ><. Tue Feb 8 20:22:00 2005: I: 2 IDX_LA: 2 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >going< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result >gehend<. Tue Feb 8 20:22:00 2005: mt: disambig mode: >0< Tue Feb 8 20:22:00 2005: I: 3 IDX_LA: 4 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >to sweden< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result ><. Tue Feb 8 20:22:00 2005: I: 3 IDX_LA: 3 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >to< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result >zu nach<. Tue Feb 8 20:22:00 2005: mt: disambig mode: >0< Tue Feb 8 20:22:00 2005: I: 4 IDX_LA: 5 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >sweden today< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result ><. Tue Feb 8 20:22:00 2005: I: 4 IDX_LA: 4 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >sweden< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result ><. Tue Feb 8 20:22:00 2005: I: 5 IDX_LA: 5 Tue Feb 8 20:22:00 2005: mt: get_rawtr for >today< lexl: >xx<. Tue Feb 8 20:22:00 2005: mt: gives result >heute<. Tue Feb 8 20:22:00 2005: mt: disambig mode: >0< Tue Feb 8 20:22:00 2005: mt: restore_punc. Tue Feb 8 20:22:00 2005: mt: synthesize. Tue Feb 8 20:22:00 2005: mt: synthesize: tformat. Tue Feb 8 20:22:00 2005: mt: writefile & mtinfo. Tue Feb 8 20:22:00 2005: Time for command 'mt en:de level0 mt_en.txt': 0On Perl 5.8.0 it does this
Tue Feb 8 20:45:09 2005: mt: entering sequential, mode >level0<... Tue Feb 8 20:45:09 2005: I: 0 IDX_LA: 1 Tue Feb 8 20:45:09 2005: mt: get_rawtr for >i am< lexl: >xx<. Tue Feb 8 20:45:09 2005: mt: gives result ><. Tue Feb 8 20:45:09 2005: I: 0 IDX_LA: 0 Tue Feb 8 20:45:09 2005: mt: get_rawtr for >i< lexl: >xx<. Tue Feb 8 20:45:09 2005: mt: gives result >ich<. Tue Feb 8 20:45:09 2005: mt: disambig mode: >0< Tue Feb 8 20:45:09 2005: I: 1 IDX_LA: 2 Tue Feb 8 20:45:09 2005: mt: get_rawtr for >am going< lexl: >xx<. Tue Feb 8 20:45:09 2005: mt: gives result ><. Tue Feb 8 20:45:09 2005: I: 1 IDX_LA: Tue Feb 8 20:45:09 2005: mt: get_rawtr for >< lexl: >xx<. Tue Feb 8 20:45:09 2005: mt: gives result ><. Tue Feb 8 20:45:09 2005: I: 1 IDX_LA: 2 Tue Feb 8 20:45:09 2005: mt: get_rawtr for >am going< lexl: >xx<. Tue Feb 8 20:45:09 2005: mt: gives result ><. Tue Feb 8 20:45:09 2005: I: 1 IDX_LA: Tue Feb 8 20:45:09 2005: mt: get_rawtr for >< lexl: >xx<. Tue Feb 8 20:45:09 2005: mt: gives result ><. Tue Feb 8 20:45:09 2005: I: 1 IDX_LA: 2 Tue Feb 8 20:45:09 2005: mt: get_rawtr for >am going< lexl: >xx<. Tue Feb 8 20:45:09 2005: mt: gives result ><. Tue Feb 8 20:45:09 2005: I: 1 IDX_LA: Tue Feb 8 20:45:09 2005: mt: get_rawtr for >< lexl: >xx<. Tue Feb 8 20:45:09 2005: mt: gives result ><. Tue Feb 8 20:45:09 2005: I: 1 IDX_LA: 2ad infinitum...
Bye
PetaMem All Perl: MT, NLP, NLU
In reply to Do yourself a favor and upgrade (Bug in 5.8.0) by PetaMem
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |