Lazzuli
Tu es un révolutionnaire de MSN toi ^^ "Tout le monde" utilise ce truc justement pour les smileys, les wizz et compagnie, et toi tu t´en sers pour éviter lol
Bossinou
Oui les thinsp il fallait déjà tomber dessus, c´était assez efficace comme technique pour gonfler les messages ;)
-FeuFeu-
Oui Python c´est vraiment le langage de la concision, on obtient un joli programme en 10 fois moins de lignes qu´en C. Néanmoins j´ai déjà écrit un peu plus de 2500 lignes de code sur la nouvelle version du programme de stats (écrite en C), donc il est un peu tard pour revenir en arrière.
En tout cas tu as soulevé la question qui me préoccupe le plus, celle de la rapidité. Il y a deux ou trois ans, je générais les stats à partir d´une version modifiée de pisg (
http://pisg.sf.net ), un générateur de stats écrit en Perl. Le principal reproche qu´on pouvait lui faire était justement sa lenteur et les ressources qu´il consomme, c´est pourquoi avec un ami on a écrit un programme en C qui répond à nos besoins (le programme actuel). Au final on a divisé le temps de calcul par 10, voire plus pour certains forums. Depuis je me méfie (peut-être un peu trop) des langages interprétés quand je recherche les performances. J´ai tendance à penser que le Python est plus utile pour faire des outils où la vitesse n´est pas le soucis premier : interfaces graphiques, scripts systèmes, accès à des bases de données, etc...
Le couple Lex/Yacc génère du code en C, donc une fois intégré dans le programme, c´est du code compilé qui s´occupe de l´analyse lexicale/syntaxique. Et vu que c´est du code généré et pas du code que j´écris moi-même, ça ne peut pas être trop mauvais ;)
PLY est clairement moins rapide, c´est plus ou moins ce qu´ils affirment sur leur site : "Although the lexer has been written to be as efficient as possible, it´s not blazingly fast when used on very large input files. Sorry. If performance is concern, you might consider upgrading to the most recent version of Python, creating a hand-written lexer, or offloading the lexer into a C extension module."
Quant à pyparsing, c´est vrai qu´il a l´air d´avoir des performances intéressantes et qu´il y a certainement moyen de faire quelque chose de bien avec ça. Mais sachant que ça fait plusieurs années que je bricole le programme actuel dont j´ai pu faire une liste assez précise des défauts, j´ai rechigné à me pencher sur des langages que je connais mal de peur de commettre de nouvelles erreurs propres à ces langages. C´est vrai quoi, j´en ai marre de me planter à chaque fois ^^
Bref, ça ne retire rien à ce que tu dis, ça peut valoir le coup de se pencher sur des alternatives. Et là-dessus je suis loin d´avoir tout essayé. Ma foi, il sera toujours temps pour une prochaine version, ou voire même avant si je constate que le programme que j´écris actuellement ne répond pas si bien que ça à mes objectifs. ;)