Prikaz jedne poruke
Stara 28.10.2008, 15:25   #19
JBlitzkrieg
Član
 
Član od: 6.3.2006.
Lokacija: Nis
Poruke: 141
Zahvalnice: 31
Zahvaljeno 9 puta na 7 poruka
Određen forumom Re: Mpl iliti mine programming language :)

Da, lepo su ti svi rekli da treba da procitas dobar deo literature oko programskih prevodilaca i da naucis sta su leksicka, sintaksna i semanticka analiza. Posle analize jezika ide i njegova sinteza (prevodjenje u medjukod, optimizacija medjukoda, pa prevodjenje u asemblerski jezik i opet njegova optimizacija).
Jeste da ce ti ovo oduzeti dosta vremena, ali bolje ovako, nego da tu negde na pola projekta shvatis da nisi uzeo sve mogucnosti u opticaju (i shift-deletujes sve sto si radio), a ucenje na ovaj "tenicki" nacin je, kako se kaze, bullet-proof na razlicite greske.

Mada ti hoces da kod prevedes u C pa onda da zoves gcc... To sto ti pravis se zove parser jezika (samo analiza bez sinteze). Preporucujem ti da naucis kako se zadaje gramatika jezika, da posle napravis neki tokenizer i na kraju uradis sintaksnu analizu koji je i najtezi deo. Preporucujem da koristis Bottom-up analizu (LR(1) parser), jer najbolje resava te probleme uz minimalne (ili nikakve) promene nad postojecom gramatikom (problem leve rekurzije i itd...).

Lex i Yacc : odlican pocetak da naucis osnove kompajlera je preko ovih generatora.
JBlitzkrieg je offline   Odgovor sa citatom ove poruke