J’ouvre un nouveau fil pour continuer, parce que ça commence à être sacrément mélangé, par rapport au sujet initial.
Je relève notamment plusieurs réflexions qui, de mon point de vue, renforcent mon propos :
- RealET : Fondamental de SPIP (tant qu’on aura pas une syntaxe XML des squelettes) : on ne peut pas mettre une boucle dans une balise
- denisb : il faut d’abord pour cela avoir une syntaxe solide et non ambigue ce qui n’est pas le cas
actuellement. - Rastapopoulos : Ce qui touche à l’analyse syntaxique et à la compilation est un des points les plus compliqués et complexes de SPIP, donc c’est pas prêt de bouger à court terme.
C’est bien vrai que tout ça concerne bien la technologie du parsing, et non pas la logique de Spip.
Donc c’est quelque chose qu’il serait souhaitable d’améliorer : il me semble que sur ce point tout le monde est d’accord, mais en même temps tout le monde fait valoir les difficultés qui s’y opposent dans l’immédiat.
Or il faut bien avouer que ça donne l’impression d’un cercle vicieux qu’il va être difficile de briser.
Notamment parce que je suis évidemment d’accord avec denisb : il faut “offrir des possibilités nouvelles (sans casser l’existant)”.
Et ne pas casser l’existant, c’est toujours ce qui est le plus difficile à respecter quand on veut transformer un peu fondamentalement une construction.
De ce fait, même s’il y a une réflexion en cours pour “tout changer”, elle est évidemment très complexe à mener, d’où le pessimisme quant à son aboutissement à court terme.
En même temps, comme on continue à apporter des possibilités nouvelles, le problème ne cesse de grossir régulièrement, probablement plus vite que la réflexion ne peut avancer.
Mon point de vue, devant ce genre de situation, c’est que le seul vrai moyen de sortir du statu quo consiste à extraire des “morceaux” du problème et à les traiter séparément de l’ensemble, quitte à alourdir provisoirement le traitement.
Le bénéfice de cette façon de faire, c’est qu’au lieu d’être devant un très gros problème, on ne s’occupe que d’un petit à la fois, en prenant soin de rendre ces morceaux aussi indépendants que possible du noyau initial.
En renouvelant cette démarche, successivement sur différents morceaux, au fur et à mesure que l’inspiration désigne ceux qui peuvent être isolés comme ça, on finit par avoir un ensemble sur lequel il est beaucoup plus facile de mener des réflexions, et de définir une stratégie de normalisation de la syntaxe.
Et à partir de là, d’en venir effectivement à une reconstruction d’ensemble qui réintègre les morceaux dans un tout cohérent et performant.
C’est pour ça que je pense à un “pré-parseur’”, comme une première solution intermédiaire qui permet de commencer à bouger.
Je pense que je vais déjà essayer de faire quelque chose dans mon coin, qui corresponde à ce que j’envisage ci-dessus.
En attendant, comme je ne prétends pas avoir raison en tous points, comme ça d’un coup de baguette magique, je suis preneur de toutes remarques complémentaires qui m’éviteraient de plonger dans un certain nombre de difficultés rédhibitoires.