Sujet : Bienvenu à Hoa_Compiler
Hey
,
Je voulais vous signaler qu'un nouveau paquetage vient de naître : Hoa_Compiler.
Pour ceux qui me suivent sur Twitter (http://twitter.com/hoaproject) ou Identica (http://identi.ca/hoaproject), vous saviez que je le préparais.
Pourquoi avoir besoin d'un compilateur ? Car j'en ai besoin (sans déc' …) pour Hoa_Test, pour Hoa_Json, pour Hoa_Yaml etc.
Pour Hoa_Test car j'ai mon propre langage de test : Praspel (motivation principale).
Pour Hoa_Json si jamais le module JSON n'est pas activé.
Pour Hoa_Yaml car l'analyseur actuel est tout pourri …
Bref, c'est un besoin récurrent en ce moment. Et comme il n'en existe pas des masses en PHP, bah j'ai fait le mien. Vous vous en doutez, je n'ai rien fait au hasard. Il est extensible car je nourris un doux fantasme depuis pas mal de temps qui consiste à faire un compiler compiler plus tard (un compilateur de compilateur, à l'instar de JavaCC/JJTree ou Flex/Bison).
Pour l'instant, je l'ai fait pour les besoins de mon projet actuel concernant les tests. Il est donc dédié à des grammaires LL(1) uniquement (une autre classe sera dédiée aux grammaire LL(k) et encore une autre aux grammaires LALR pour des raisons évidentes de performances), mais la gestion d'erreurs est très fine (numéro de ligne et de colonne dans toutes les situations), les tampons sont automatiquement supportés, expressions régulières type PCRE supportées etc.
J'ai un exemple en ligne d'utilisation de Hoa_Compiler_Ll1 : http://dropbox.android-bay.net/LL1.phps.
Vous trouverez les sources (très rudimentaires pour l'instant) dans le tronc de Hoa à partir de la révision 662.
Voilà. Ça sert à prouver que je ne glande pas
. Désolé si j'ai du mal à tenir mes promesses sur l'orientation du projet mais j'ai du mal à partager mon temps entre l'université et Hoa
. J'arrive déjà à dormir de temps en temps, je suis content …