Bon... j´avais une réponse complète et j´ai accroché backspace avec le focus hors de la boîte de texte
.
--
" comment on procederai pour quoi? Ce serait sympa de preciser quels usage tu veux en faire..."
J´ai posé la question au sens large. C´est entièrement voulu. Je m´intéresse à ce que des gens qui ont plus d´expérience que moi ont à dire sur leur utilisation de langages de script. C´est exactement ce que tu as fait dans ton dernier paragraphe ( merci ! ).
L´idée c´est de faire un tour d´horizon parce que le sujet m´intéresse et que je cherche à m´orienter par rapport à la plate-forme que j´ai choisi. Je ne veux pas de tuto ( bien que si quelqu´un a un début de piste pour que je puisse avoir Bison/Flex sous VC++, je serais preneur), je ne veux pas de mentor ou quoique se soit du genre
. Par le fait même, je suppose que quelqu´un qui n´avait pas envie de " discuter script" et qui veut simplement me donner une réponse pour que je m´en aille devrait éviter le topic
.
--
" C´est deux styles de scripts tres differents. Le XML est purement descriptif, pas un vrai langage de scripts qui permet de faire des operations..."
Je sais. Je me doute que personne ne va favoriser un langage entièrement descriptif ( à moins de se servir de la chose pour créer des niveaux ou un truc du genre). J´ai posé la question quand même parce que je trouvais que http://www.gamedev.net/reference/programming/features/modxml1/ était intéressant.
--
En ce qui concerne Flex et Bison, ce sont des outils pour CRÉER un language de script.
Flex c´est un analyseur lexical. Tu lui fournis un jeu de règles, il te fournit du code en C ( ou en C++, selon la version) d´un programme qui fait une action que tu définis lorsqu´un mot clé est rencontré. C´est très pratique car les règles à fournir sont beaucoup plus simple que la théorie dérrière un analyseur lexical construit de toute pièce.
Bison, j´ai pas encore parcouru ce que ça devait faire. Pour autant que je sache, ça vérifie la grammaire ( ça sert à faire en sorte qu´une ligne du genre `a == 2 ( ) if` soit refusée alors que `if(a==2)` soit acceptée).