Lol, lag it
des que j´ai lu le titre j´ai fait " quelle horreur ! !" et j´allais killer quand j´ai vu que CT toi
--> et oui, y´a du favoritisme !
Bref, j´ai appris la théorie de la compilation, c´est qq chose de récursif.
La base est bien sur le strcmp, mais ça va plus loin, il faut reconnaitre des formes, on parle de " grammaires", de LR(0) et de LL(1) il me semble ( c´est des notations...)
Le principe est, par exemple, en C, une fonction est toujours de la forme :
T U(X)
{
C
}
Il faut faire reconnaitre cela
T est la liste de types connus
U est un nom que le compilateur acceptera
X est un ensemble d´arguement
X est soit :
A
ou
A,X
ce qui fait, que, pour reconnaitre les arguments,tu testes si tu es de la forme A ou A,X et récursivement, tu peux ainsi faire un nombre d´argument variable...
Voila le principe : reconnaitre des formes...
a chaque ligne, tu regardes si tu as une forme connue, si elle ne l´est pas, tu renvoies une erreur de syntaxe.
Si tu veux de la doc la dessus, cherches sur LR(0) et LL(1)
et tu as des langages spéciaux pour la reconnaissance de grammaire appelés :
LEX et YACC, essaie de trouver de la doc dessus
Tiens moi au courant 