Newsgroup: it.comp.lang.pascal
Titolo: Lex e Yacc

Salve a tutti { vero che c'è ancora qualcuno vero? }
Premetto che non ho tempo di fare niente sono mesi che ho una cartella 
con i howto su come si usano Lex e Yacc ma non trovo il tempo di 
leggerli. L'universtia non mi da il tempo neache di restirare { e sapete 
il bello? Non passo un esame da mesi... deprimente... } comunque da 
quello che ho capito Lex e Yecc da quello che ho capito dovrebbero 
servire per fare dei loader, cioè io gli dico come è strutturato un file 
e loro buttano fuori un sorgente { in C } che riempie una stuttura nel 
formato da me indicato. Tutto questo nel modo migliore possibile. Da 
quel che so anche GCC usa Lex/Yacc per caricare i sorgenti prima di 
compilarli ma non so quanto sia vero.
Presumendo che ho capito bene { magari non ho capito un H e allora :D 
non fa niente } esiste un equivalmente pascal? Se non esiste, su cosa si 
basano? Voglio dire chi garantesce che il sergente che viene sputato 
fuori sia effettivamente il modo migliore? Esiste qualche algoritmo 
particolare per "generare dei loader"? Se si qual'è?
Tutto questo perchè voglio costruire un compilatore pascal e scrivere il 
parser dei sorgenti è una fatica non da poco...
e tutto questo perchè non ho tempo =_=" ma perke faccio cosi? Perchè 
inzio 300 cose e non ho neache il tempo di finirne 1? Boh
cmq forse il discorso interessava pure ad altri e ho provato a gettare 
il sasso per vedere se riuscivo a perturbare l'acqua che stanga qui...
-- 
Il Razziatore,
The Only Good Windows is an uninstalled Windows
-----------------------------------------------
MSN   : 
IlRazz...@netscape.net
ICQ   : 67552596
Yhaoo : Razziatore82
-----------------------------------------------
Founder of MediaPlayer Project
http://mpp.iwebland.com

 formato da me indicato. 
Ciao Raz
allora da quel poco ho visto io al corso di introduzione ai compilatori 
l'uso combinato di Lex e Yacc servono per realizzare di compilatori.
Si definisce una grammatica la si passa a Lex che genera il parser e poi 
con Yacc si genera il compilatore...
Quindi per realizzare un compilatore pascal devi dargli tutta la 
grammatica... un lavoraccio
se cerchi un pò tra il materiale che hai scaricato probabilmente hai 
degli esempi.
So che esiste (per il tuo dispiacere) una versione anche per Java
Ciao
ReDiCuori
-- 
-- 
L'uomo non sa perchè si innamora, l'uomo viene travolto e basta
------------------------------­---------------------------
www.giordanoemilio.altervista.org
------------------------------­---------------------------
www.securitygroup.it
Società di servizio che opera nel campo
della sicurezza aziendale
------------------------------­---------------------------
www.pascallike.too.it
http://utenti.lycos.it/pascallike
il sito sulla programmazione pascal
sorgenti, tutorial ed utility
------------------------------­------------------------------
www.treves-srl.com
Libreria Internazionale Treves
Via Toledo 249/250 Napoli
------------------------------­------------------------------
www.alphalibri.com
Vendita ingrosso di libri
Via S.Anna dei Lombardi 10 , Napoli
------------------------------­-------------------------

 ReDiCuori


 
Allora nn prendere tutto per oro colato l'ho usato poco e niente, il 
tutto dovrebbe funzionare così
1. si scrive la grammatica del liguaggio per il quale si vuole generare 
il parser
2. si passa tutto a lex che genera l'analizzatore lessicale (una automa 
per interpretare la sinstassi del linguaggio)
3. si ripassa il tutto a Yacc (probabilmente salto qualche passaggio) 
che crea un parser in questo caso in C
4. usi il parser per creare i tuo compilatore
Sicuramente nei tutorial viene spiegato il tutto meglio di come posso 
fare io.
Il mio consiglio è rinunciare se nn vuoi diventare pazzo :D
ReDiCuori
Io ti consiglio di


perchč no? PS: Sai niete di versioni in pascal?
Tempo fa mi ero riproposto anch'io di imparare a usare 'sti cosi, al
momento attuale continuo a sapere soltanto che servono a costruire
compilatori... Da ricerche compiute allora avevo scoperto plex e pyacc
che sono inclusi anche nel Free Pascal e Coco/R, dalli in pasto a
Google.
-- 
Omega e' omega e basta