Présentation
Paradigm a introduit Solar, un nouveau compilateur Solidity disponible via la suite Foundry. Le projet se positionne comme une alternative à solc, le compilateur officiel, en promettant des gains de vitesse et d’efficacité du bytecode. Solar est déjà intégré dans les workflows de développement grâce à une simple mise à jour de l’outil Foundry.
Performances de compilation
Selon les données publiées, Solar compile les contrats Solidity plus de 100 fois plus rapidement que solc. Cette amélioration provient d’une architecture interne qui parallélise les phases d’analyse syntaxique et de génération d’AST (Abstract Syntax Tree), réduisant ainsi le temps d’attente de plusieurs secondes à quelques millisecondes pour des projets de taille moyenne. Le gain de vitesse se traduit directement en cycles de test plus courts et en itérations de développement plus fréquentes.
Optimisation du bytecode
Outre la rapidité, Solar produit un bytecode plus efficace sur l’EVM que celui généré par Solady, un autre optimiseur populaire. L’optimisation repose sur une réduction du nombre d’opcodes de stockage et sur une meilleure gestion des sauts conditionnels, ce qui diminue la consommation de gaz lors de l’exécution des contrats. Les développeurs n’ont plus besoin d’insérer du code en ligne (assembly) pour atteindre ce niveau d’efficacité, ce qui simplifie la maintenance du code source.
Résolution du problème « Stack Too Deep »
Solar intègre une solution native au problème « Stack Too Deep », qui obligeait auparavant les programmeurs à refactoriser leurs fonctions ou à recourir à des structures de données intermédiaires. Le compilateur réorganise automatiquement les variables locales en les stockant dans la mémoire lorsqu’elles dépassent la limite de 16 slots de la pile, évitant ainsi l’erreur de compilation. Cette fonctionnalité élimine un obstacle fréquent dans les contrats complexes, notamment ceux qui manipulent de nombreux paramètres ou variables temporaires.
foundryup
forge --use solar