OVH Cloud OVH Cloud

parser de grammaire

23 réponses
Avatar
Sylvain
je cherche (aussi) un lexer pour parser des flux proposant leur propre
grammaire (déclaration de fonctions, opérateurs arithmétiques a-la-C,
valeurs immédiates).

le but est de construire une représentation des fonctions déclarées
(arbre ou autre ce n'est pas le point) et de parser des expressions pour
générer un flux texte qui sera l'expansion de ces expressions lues.

je suis parti d'un lexer self-made mais il existe sûrement des projets
avancés, merci pour toute piste.

Sylvain.

3 réponses

1 2 3
Avatar
Gabriel Dos Reis
Laurent Deniau writes:


[...]

| c: Contains a C parser written in Elkhound. The grammar is almost free
| of shift/reduce conflicts. It uses the lexer hack (feedback from the
| symbol table into the lexer) to distinguish variables from types.
|
| pabo ;-)

Yup :-)

-- Gaby
Avatar
loufoque
Etienne wrote on 09/08/2006 10:01:

je cherche (aussi) un lexer pour parser des flux proposant leur propre
grammaire (déclaration de fonctions, opérateurs arithmétiques a-la-C,
valeurs immédiates).


Tu as lex/Yacc et leur equivalent GNU :
- flex --> http://www.gnu.org/software/flex/
- bison --> http://www.gnu.org/software/bison/


merci Etienne pour cette réponse.


Puis-je savoir pourquoi tu as ignoré la proposition de boost.spirit, qui
semble mieux correspondre à ce que tu cherches ?



Avatar
Sylvain
loufoque wrote on 29/08/2006 15:19:

Puis-je savoir pourquoi tu as ignoré la proposition de boost.spirit, qui
semble mieux correspondre à ce que tu cherches ?


sur quoi bases-tu cette affirmation d'ignorance ?

comme répondu le 09/08, je m'étais à la date du post déjà imprégné de
bison mais ignorait spirit; j'ai depuis récupéré sa distrib (cette
partie dans la distrib globale de spirit) et la recompile petit à petit
... ie quand j'ai du temps, ce qui est une denrée rare surtout pour un
projet gratis sans besoin absolu et pour lequel j'ai une solution qui
existe déjà (mais qui souffre d'un manque de généricité / souplesse).

Sylvain.

1 2 3