Petit Interpréteur

mika_prodigy -  
Groarh Messages postés 706 Statut Membre -
Bonjour,

Tout d'abord j'aimerais définir un mini langage (je pensais à un langage capable uniquement de réaliser des opérations mathématiques basiques) avec ses propres règles.
Et ensuite faire un interpréteur de celui-ci en C.

Comment procéder?

1 réponse

Groarh Messages postés 706 Statut Membre 185
 
Salut,

si tu n'es pas familier avec les procédés d'analyse syntaxique, ça risque d'être un peu dur à mâcher au début. Mais je ne dis pas ça pour te décourager, bien au contraire !

Il y a pas mal de choses à prendre en compte. Je te conseille de faire des recherches sur tout ce que je mets en italique. Et si tu tombes sur des trucs qui parlent de compilation, ça marche aussi.

D'abord, il te faut un langage rationnel. La première étape d'interprétation passe par l'analyse lexicale, qui découpe la chaîne source en unités lexicales, souvent appelées tokens. Les tokens sont envoyés à l'analyseur syntaxique qui utilise une grammaire formelle pour déterminer les actions à effectuer.

Ton travail consiste à écrire les deux analyseurs, le lexical et le syntaxique. Il y a un exemple assez simple dans cet article de wikipédia, paragraphe « Langage de programmation simple ».

Une grammaire est la forme « dépliée » d'une expression rationnelle, avec des variables intermédiaires. Note que tu n'as pas vraiment besoin d'écrire la grammaire de ton langage, tu peux construire ton analyseur syntaxique directement. Mais ça permet de bien mettre les choses au clair ;)

Envoie-moi ton MSN par MP si tu veux en discuter.
;)
0