Programmering

Mozilla opdaterer RegExp-understøttelse i SpiderMonkey JavaScript-motor

Mozilla har udstyret sin SpiderMonkey JavaScript-runtime med en ny RegExps-motor, der gør det lettere at understøtte moderne RegExps-funktioner. Den nye RegExp-motor debuterer i browseren Firefox 78 Developer Edition.

RegExps er et meget anvendt værktøj til manipulation af strenge, der tilbyder en rig syntaks til at beskrive og fange karakteroplysninger. Mozilla i 2014 havde erstattet sin YARR-reguleringsudtryksmotor med en forked kopi af Irregexp, den almindelige ekspressionsmotor, der blev brugt i Google V8 JavaScript-motoren. Mozilla omskrev Irregexp stærkt for at bruge sine egne API'er. Dette gjorde det lettere at arbejde med den nye motor, men sværere at importere nye opstrømsfunktioner. Og med tiden faldt Mozilla bagud med at støtte nye ES2018 RegExp-funktioner.

Mozillas nye tilgang - et nybygget shimlag til IrregExp - giver fuld adgang til V8-funktionalitet, fra hukommelsestildeling og kodegenerering til datastrukturer og hjælpefunktioner. Som et resultat får SpiderMonkey et stærkere fundament for fremtidig RegExp-support, en der tillader SpiderMonkey-teamet at tilføje ny RegEx-syntaks hurtigere.

Mozilla sagde, at indsatsen har resulteret i fuld støtte til alle ECMAScript RegExp-funktioner. Mozilla håber, at dets arbejde med den nye motor kan være grundlaget for RegExp i Firefox i de kommende år. Firefox Developer Edition med de nyeste udviklerværktøjer i beta kan tilgås fra mozilla.org.