6 points par heycalmdown 2020-04-08 | 1 commentaires | Partager sur WhatsApp

De nos jours, il est très rare de trouver un site web qui n’embarque pas de JavaScript.

L’idée de livrer JavaScript non pas sous forme de texte à parser côté client, mais directement sous forme d’AST déjà parsé, existe depuis longtemps, et Cloudflare l’a explorée plus en profondeur.

Pour en retenir les points les plus intéressants...

  • Le texte doit être reçu en totalité avant de pouvoir être parsé et évalué

  • Un AST peut être évalué même s’il n’a été reçu qu’en partie

  • Il est possible d’envoyer d’abord uniquement ce qui est nécessaire pour afficher le premier écran, puis d’envoyer le reste de manière asynchrone

  • Le parsing se fait avec Node.js, mais l’édition de l’AST et son encodage se font en Rust !

  • Cloudflare fournit des VM isolées appelées Workers, qui permettent d’exécuter de la logique un peu comme AWS Lambda, et les utilise dans le processus de génération Text -> BinaryAST

  • Workers repose sur un moteur basé sur JavaScript, donc Rust y est compilé en WebAssembly pour être exécuté

  • Firefox peut déjà interpréter BinAST

1 commentaires

 
saafk11 2020-04-08

Très intéressant.