Newsgroup: it.comp.lang.c
Titolo: Traduzioni

Salve, premesso che non sono un programmatore ma solo un appassionato, 
volevo chiedervi se qualcuno di voi puo' indirizzarmi a qualche funzione C 
opensource finalizzata al seguente compito: "data una stringa in italiano, 
la funzione trasforma la stringa in inglese". Del tipo:
printf( "%s", ItaToEng( "Ciao Mondo!\n\r" ) );
mi restituisca: "Hello World!".
Temo cmq sia una cosa abbastanza ostica dato che quantomeno servira' un 
vocabolario e in secondo luogo un sistema di valutazione delle regole 
sintattico/grammaticali. Probabilmente serviranno anche delle eccezioni per 
i vari "\n\r" e similari. Chiaramente non si puo' pretendere piu' di tanto 
dai traduttori, ma se qualcuno conosce qualcosa mi faccia sapere per favore, 
grazie!
Ciao
Mat 


GNU gettext
http://www.gnu.org/software/gettext/manual/gettext.html

 
http://www.gnu.org/software/gettext/manual/gettext.html
Corposo e molto interessante, studiero' a vedere se ne vengo a capo!
Grazie per ora!
mat

 mi restituisca: "Hello World!".
Ho dei forti dubbi che quello che chiedi esista:
tu stai chiedendo una funzione che traduce da un linguaggio
ad un altro una frase arbitraria.
Il problema e' studiatissimo e complicatissimo.
Ci sono un po' di progetti open-source di traduzione
automatica, e alcuni link li puoi trovare, per esempio, in fondo
alla pagina di wikipedia dedicata all'argomento:
http://en.wikipedia.org/wiki/Machine_translation
ma dato il lavoro immane che c'e' dietro la maggior
parte dei traduttori e' commerciale.
Inoltre anche alcuni famosi traduttori automatici
prendono facilmente fischi per fiaschi.
Per esempio, Babelfish di Yahoo e' spassoso:
http://babelfish.yahoo.com
italiano: io abito al primo piano
inglese: I dress to the first one slowly
italiano: io abito al secondo piano
inglese: I dress to according to plan
italiano: io abito al piano terra
inglese: I dress to the flat earth
(il traduttore di Google, che cadeva negli stessi tranelli,
adesso non ci cade piu'...)
g.
--
http://www.iread.it
 : anagrammi, criptaritmi, polimini,...

Gia', infatti stavo pensando se riuscivo a fare un qualcosa che sfrutti 
l'engine di alcuni siti web (tipo lo "strumento per le lingue" di google) 
per tradurre il testo che io passo e poi ne catturi la traduzione 
risultante. Temo cmq non sia anche questa una cosa al mio livello. Riguardo 
al gettext mi sono cmq accorto, leggendo, che non fa al caso mio dato che 
non traduce a runtime ma "internazionalizza" a partire da frasi che io devo 
cmq tradurre prima di compilare.
Ciao
mat


 g.
ci spieghi come f�? :-)
Ciao

 ci spieghi come f�? :-)
Non ne ho idea. Ho letto qualcosa sulle tecniche
di traduzione automatica ma molti anni fa.
Comunque anche Babelfish e' migliorato: qualche
anno fa traduceva "primo piano" in "Association of Bologna".
g.

Matteo2303 ha scritto:

se non sei esperto di programmazione, il mio consiglio ï¿œ utilizzare un
servizio tramite babelfish attraverso un linguaggio semplice, ad esempio
in ruby:
da shell:
gem install babelfish (ti installa la libreria)
e poi fai un piccolo script:
ita2en.rb
#!/usr/bin/ruby
require 'babelfish'
input_code = "it"
output_code = "en"
puts 'inserisci testo da tradurre'
input_text = gets.chomp
puts input_text + ' traduzione:';
puts BabelFish.translate(input_text, input_code, output_code)
e zack finito...
nota: non per provocare ne per scatenare flame, ma per sua stessa
ammissione ï¿œ solo un appassionato e 'ste cose si fanno meglio con i
linguaggi di scripting...


<snip>
lol

FtM ha scritto:

?


wrote:

niente, lo trovavo divertente.
Non che consideri ruby poco serio, per carità, solo che è questa riga
è buffa :)
Ciao!

FtM wrote:

la gem si chiama come il servizio è un modo comodo per trovare librerie 
senza troppo sbattimento.
Io considero i linguaggi di programmazione specifici per un dominio 
applicativo e per la programmazione web, l'amministrazione di sistema, per 
applicazioni gui che non richiedono codice critico e per semplici prototipi 
ruby è imbattibile.
Col C/C++ si fa tutto il resto. 
Non che quanto detto sopra non si possa fare col C ma vuoi mettere parsare 
una stringa con ruby/perl/awk quanto sia più semplice e immediato?
Mentre per un applicazione che sia semplice da stribuire, efficente e senza 
bisogno di runtime il C resta il re.


<OT>
Sì, beh, ovvio! Se fosse bastato un solo linguaggio di programmazione
adesso non ne avremmo un milione ;-)
Un po' tutti utilizziamo un linguaggio ad alto livello per queste
cose, anche se personalmente per il web il mio preferito è PHP, visto
che lo trovo il più C-like. Ovviamente tutto quello che riesco a fare
in bash-script viene fatto in bash-script :D
Ciao!
</OT>