Προγραμματισμός

Η Mozilla ανανεώνει την υποστήριξη RegExp στη μηχανή JavaScript SpiderMonkey

Η Mozilla έχει εξοπλίσει τον χρόνο εκτέλεσης SpiderMonkey JavaScript με έναν νέο κινητήρα κανονικών εκφράσεων (RegExps), για να διευκολύνει την υποστήριξη σύγχρονων λειτουργιών RegExps. Ο νέος κινητήρας RegExp κάνει το ντεμπούτο του στο πρόγραμμα περιήγησης Firefox 78 Edition Edition.

Το RegExps είναι ένα εργαλείο που χρησιμοποιείται πολύ για τον χειρισμό συμβολοσειρών, προσφέροντας μια πλούσια σύνταξη για την περιγραφή και τη λήψη πληροφοριών χαρακτήρων. Η Mozilla το 2014 αντικατέστησε τον κινητήρα τακτικής έκφρασης YARR με ένα διχαλωτό αντίγραφο του Irregexp, της μηχανής κανονικής έκφρασης που χρησιμοποιείται στη μηχανή JavaScript Google V8. Ο Mozilla ξαναγράφησε σε μεγάλο βαθμό το Irregexp για να χρησιμοποιήσει τα δικά του API. Αυτό διευκόλυνε τη συνεργασία με τον νέο κινητήρα, αλλά δυσκολευόταν να εισαγάγει νέες λειτουργίες ανάντη. Και με την πάροδο του χρόνου, η Mozilla έμεινε πίσω στην υποστήριξη νέων λειτουργιών RegExp ES2018.

Η νέα προσέγγιση του Mozilla - ένα νεόκτιστο shim layer για το IrregExp - παρέχει πλήρη πρόσβαση στη λειτουργικότητα V8, από την κατανομή μνήμης και τη δημιουργία κώδικα έως τις δομές δεδομένων και τις λειτουργίες χρησιμότητας. Ως αποτέλεσμα, το SpiderMonkey αποκτά ισχυρότερα θεμέλια για μελλοντική υποστήριξη RegExp, κάτι που επιτρέπει στην ομάδα SpiderMonkey να προσθέτει νέα σύνταξη RegEx πιο γρήγορα.

Ο Mozilla είπε ότι η προσπάθεια είχε ως αποτέλεσμα την πλήρη υποστήριξη για όλες τις δυνατότητες του ECMAScript RegExp. Η Mozilla ελπίζει ότι η δουλειά της στον νέο κινητήρα μπορεί να αποτελέσει τη βάση για το RegExp στον Firefox για τα επόμενα χρόνια. Η έκδοση Firefox Developer Edition, με τα πιο πρόσφατα εργαλεία προγραμματιστή σε beta, είναι προσβάσιμη από το mozilla.org.