Blog
All articles. All pillars. All authors.
Construyendo una máquina virtual basada en pila en Rust
Cómo construimos la máquina virtual basada en pila de FLIN en Rust: bucle de ejecución, tipos de valor y marcos de llamada.
Gestión de memoria y recolección de basura
Gestión de memoria en la VM de FLIN: recolección de basura, internado de cadenas y asignación en el heap en Rust.
Clausuras y funciones de orden superior en la VM
Implementando clausuras y funciones de orden superior en la máquina virtual de FLIN: upvalues y semántica de captura.
Cómo la VM ejecuta vistas
Cómo la VM de FLIN ejecuta vistas: de opcodes de bytecode a renderizado HTML con enlace de atributos reactivo.
La referencia completa de opcodes de FLIN
La referencia completa de opcodes de FLIN: aritmética, flujo de control, entidades, vistas e instrucciones de clausura.
El motor de reactividad: cómo FLIN hace todo reactivo
El motor de reactividad de FLIN: rastreo automático de dependencias, actualizaciones basadas en SSE y renderizado incremental del DOM.
El primer renderizado en el navegador: cuando FLIN conoció el DOM
La primera vez que FLIN renderizó en el navegador: compilando bytecode a HTML, el hito de la Sesión 26.
Agentes paralelos en el runtime de FLIN
El sistema de agentes paralelos de FLIN: ejecución concurrente, paso de mensajes y el modelo de runtime basado en agentes.
El sistema de tipos de FLIN: inferido, expresivo, seguro
Cómo diseñamos el sistema de tipos de FLIN para que sea inferido por defecto, expresivo cuando se necesita y seguro en tiempo de compilación -- sin el impuesto de verbosidad de los lenguajes tipados tradicionales.
Tipos unión y estrechamiento de tipos
Cómo implementamos tipos unión en FLIN -- la sintaxis int | text | bool, estrechamiento de tipos a través del flujo de control y la infraestructura del compilador Rust que lo hace posible.
Tipos genéricos en FLIN
Cómo implementamos tipos genéricos en FLIN -- parámetros de tipo, funciones genéricas, alias de tipos genéricos y el truco del lexer que distingue Option<T> de <div>.
Traits e interfaces
Cómo diseñamos el sistema de traits de FLIN -- declaraciones de traits, bloques impl, restricciones de traits en genéricos y la implementación en Rust que vincula el polimorfismo con la seguridad de tipos.