6 puntos por xguru 2020-04-06 | 2 comentarios | Compartir por WhatsApp
  • Explica de forma fácil de entender las etapas de compilación de Svelte

#1 Leer el archivo .svelte y convertirlo a AST

→ El HTML se parsea por su cuenta, el script usa Acorn y el CSS usa css-tree

#2 Recorrer el AST para rastrear referencias y dependencias

→ Crear una instancia del componente, encontrar las variables y marcarlas

#3 Generar bloques y fragmentos de código

→ Renderizador DOM/SSR

#4 Generación de código

2 comentarios

 
heycalmdown 2020-04-07

Hace unos días presentaron Toast UI Editor (https://es.news.hada.io/topic?id=1823), y también está el Language Server Protocol (https://en.wikipedia.org/wiki/Language_Server_Protocol); cada vez hay más proyectos que aprovechan AST. Creo que antes también vi la idea de enviar archivos JS no como texto sino como AST para que el motor del navegador los interpretara más rápido; no era este artículo (https://blog.cloudflare.com/binary-ast), pero parece una idea parecida.

Si en lugar de un AST generado implícitamente se empieza a construir a mano uno con más significado, entonces ya se convierte en un lenguaje funcional de la familia de las S-Expression; estaría interesante que se encontraran a medio camino.

 
xguru 2020-04-06

Una vez que lo leas, parece que a los contribuidores externos les resultará más fácil aportar al código de Svelte.