Pour faciliter la prise en charge des fonctionnalités RegExps modernes, Mozilla a équipé son runtime SpiderMonkey JavaScript d'un autre moteur d'expressions régulières (RegExps). Ce dernier sera introduit pour la première fois dans le navigateur Firefox 78 Developer Edition.
L’outil RegExps est très utilisé pour manipuler les chaînes de caractères du fait de sa syntaxe, riche, pour décrire et capturer les informations de caractère. En 2014, Mozilla avait remplacé son moteur d'expression régulière YARR par un fork d'Irregexp, le moteur d'expression régulière utilisé dans le moteur JavaScript Google V8. Mozilla ayant largement réécrit Irregexp pour utiliser ses propres API, le travail avec le prochain moteur a été simplifié, mais l'importation de nouvelles fonctionnalités en amont est devenue plus difficile. Et au fil du temps, Mozilla a pris du retard dans la prise en charge des nouvelles fonctionnalités RegExp de l'ES2018 (ES9).
L'approche de Mozilla qui repose sur l’ajout d’une couche de correction de code pour IrregExp, offre un accès complet aux fonctionnalités de V8, depuis l'allocation de mémoire et la génération de code jusqu’aux structures de données et aux fonctions utilitaires. Si bien que SpiderMonkey bénéficie d'une base plus solide pour la prise en charge future de RegExp, et permet à l'équipe de SpiderMonkey d'ajouter plus rapidement la dernière syntaxe RegEx.
Selon Mozilla, cette amélioration permet une prise en charge complète de toutes les fonctionnalités RegExp du langage ECMAScript. Mozilla espère que son travail sur le nouveau moteur pourra servir de base à RegExp dans Firefox pour les années à venir. L'édition développeurs Firefox Developer Edition, qui comprend les derniers outils en version bêta pour les développeurs, est téléchargeable sur mozilla.org.
Commentaire