Netskate
04-04-2008, 20:43
ciao a tutti, devo fare un programmino (che tanto ino non è) che trasforma sorgenti clipper *.prg in sorgenti java che possono poi essere eseguiti su qualsiasi macchina abbia installata una jvm.
analizzando un po' la situazione ho pensato che per fare ciò dovrei prima costruire un analizzatore sintattico, lessico, logico, che analizzi ogni riga di programma e la trasformi nel corrispettivo java.
ma è un lavoro immenso...
documentandomi un po' ho scoperto che il compilatore Clipper in realtà trasforma tutti i comandi in chiamate a funzioni in linguaggio C.
La trasformazione avviene sfruttando le definizioni che ci sono nei file della directory include del compilatore.
Basterebbe quindi modificare quei file per ottenere la traduzione automatica in un qualsiasi linguaggio di programmazione, java compreso. (o almeno sarebbe bello fosse possibile ( :stordita: )
Questo semplificherebbe notevolmente tutto il lavoro da svolgere perchè non dovrei più creare un analizzatore sintattico, ma solo riscrivere le regole dei file .ch e lanciare il compilatore Clipper.
per quanto riguarda la gestione dei database dbf leggevo in giro che è possibile creare una classe di interfaccia verso file dbf implementando tutte le funzionalità necessarie lasciando intatta la sintassi di clipper e bypassando jbdc.
se siete interessati all'argomento, e avete voglia di analizzare con me la situazione, fatevi avanti.
analizzando un po' la situazione ho pensato che per fare ciò dovrei prima costruire un analizzatore sintattico, lessico, logico, che analizzi ogni riga di programma e la trasformi nel corrispettivo java.
ma è un lavoro immenso...
documentandomi un po' ho scoperto che il compilatore Clipper in realtà trasforma tutti i comandi in chiamate a funzioni in linguaggio C.
La trasformazione avviene sfruttando le definizioni che ci sono nei file della directory include del compilatore.
Basterebbe quindi modificare quei file per ottenere la traduzione automatica in un qualsiasi linguaggio di programmazione, java compreso. (o almeno sarebbe bello fosse possibile ( :stordita: )
Questo semplificherebbe notevolmente tutto il lavoro da svolgere perchè non dovrei più creare un analizzatore sintattico, ma solo riscrivere le regole dei file .ch e lanciare il compilatore Clipper.
per quanto riguarda la gestione dei database dbf leggevo in giro che è possibile creare una classe di interfaccia verso file dbf implementando tutte le funzionalità necessarie lasciando intatta la sintassi di clipper e bypassando jbdc.
se siete interessati all'argomento, e avete voglia di analizzare con me la situazione, fatevi avanti.