_
~ DAMOLAB - XBNF Neurotranslator ~
" Chose promise, chose due "
XBNF #TAGS _./._ damolab _./._

XBNF neurotranslator v1.12


| FR | par DAMO | | 14/11/2025 20h30 | (last update 16/11/2025 16h32) | Commentaires |
#XBNF #LINUX
Nouvelle mouture de XBNF Neurotranslator : le compilateur de compilateur ultime
|


1) XBNF Neurotranslator - v1.12 - Quoi de neuf ?


- amélioration du mode matrix
- nettoyage des tests : regroupement des fonctions de bases de xbnf (voir samples/test.call_CONV.xbnf)
- option mode cache (-C)
- améliorations du debuggeur : grammaire courante et parcours
- tests de performance (make testperf) : conservation et comparaison des résultats (test.rb)
- améliorations liés à la console couleur

2) Améliorations majeurs



2.1) optimisations


       
2.1.1) cache mode / option -C


Le mode cache permet de créer un fichier de cache à partir d'une grammaire déja parsée,
lorsque la commande est lancée une seconde fois avec cette option, la grammaire si, elle n'a pas été mise à jour,
sera alors chargée plus rapidement à partir du fichier .cache0 précédement générée.

Toujours avec l'option, si la grammaire a été modifié, elle sera parsée normalement et le fichier cache regénéré.

       
2.1.2) écriture en sortie


Les fonctions internes (outFlux_*::write) sont optimisées afin de mieux supporter le binaire
(caractères null ou de contrôle).
Par exemple, les caractères de retour à la ligne, (CR suivit de LF pour windows et seulement LF sous Linux),
sont conservés tel quel durant le parsing et la génération du résultat, aucune adaptation n'est effectué par XBNF
(ce qui n'était pas le cas avant).

2.2) fonction de parsing


       
2.2.3) (CONV "%format" <rule>)


Cette fonction, utilisée en sortie (output), permet de convertir une règle parsée en:
- %d : conversion en décimal
- %b : conversion en binaire
- %o : conversion en octal
- %x : conversion en hexadecimal
- %U : caractères lisibles en capital
- %l : caractères lisible en minuscule
- %s : écriture de la chaine interne

       
2.2.4) (RANGE <min> <max>)


Voir le fichier de test test.basics.xbnf, qui contient, entre autre, les fonctions de syntax basique.

Le RANGE consomme un octet seulement, <min> et <max> décrit les caractères valides,
par exemple les lettres miniscules de A à Z :

...
(RANGE "a" "z")
... équivalent à 
(RANGE 0x61 0x7a)


Cette fonction est utilisée massivement dans les grammaires de convertion de ABNF vers xbnf.
(ajoutés rescement dans la librairie XBNF).

2.3) mode Matrix / options -mr/-mf/-ms


Le mode matrix à évolué et dévient indispensable pour visualiser le fonctionnement et l'état
de l'arbre d'analyse, c'est à la fois amusant et utile !

Avec l'option -mr, les règles en cours d'utilisation s'affiche sur la console en couleur.
Pour rappel, l'option -mf permet de visualiser le flux d'entré en cours d'analyse.

Les options -mr/-mf ralentissent l'analyse, c'est pourquoi au besoin l'option -ms <saut>
permettant d'afficher seulement <step> fois et donc accélérer le process...

2.4) console couleur / option -nt <theme>


Le choix du thème permet de jouer sur la palette des couleurs utilisée par le mode matrix et
le debugger.

Il existe quatre thèmes <theme>:
- 0 : commun / par défaut
- 1 : pas de couleur ni autre floriture
- 2 : mode très classe
- 3 : mode bi-color
- 4 : mode pour windows

2.5) debugger / touches [d]/[w]


Il est maintenant possible d'afficher la grammaire en mémoire mais de façon bien proche de la
syntaxe du fichier XBNF en entré et visualiser quels sont les règles et l'élément déclenché par l'analyse.

L'ajout de l'affichage de la règle en cours avec sont élément courant surligné est un gain de
productivité majeur une fois familiarisé avec l'affichage...

Avec les deux commandes [d]eeper/shallo[w]er, il est maintenant possible de parcourir l'arbre d'analyse de manière vertical,
une fois maitrisées, les commandes du debugger permettent d'arriver plus beaucoup plus rapidement au point de blocage.

A tester !!!

Joyeuses translations ...



1) Ressources XBNF Neurotranslator



Documentation (FR)

1.1) XBNF Sources Sourceforge


Binaires et sources
Librarie XBNF

1.2) Images dockerHub


Executable et librairies
Sources et Toolchain C++ GNU (Linux 64 bits)

1.3) DamoLab


DamoLab@Sourceforge
DamoLab@DockerHub


Nom/surnom:
Message:


revenir sur l'article
#XBNF #LINUX

Aucun commentaire.

dans
une
galaxy
lointaine
Charte du site damolab.zapto.org est motorisé par

"La force est une sorte de fluide crée par tout être vivant, une énergie qui nous entoure et nous pénètre, et qui maintient la galaxie en un tout unique."
- Obi-Wan à Luke Yoda