Blog

All articles. All pillars. All authors.

Thales & Claude flin

#032 -- Union Types and Type Narrowing

How we implemented union types in FLIN -- the int | text | bool syntax, type narrowing through control flow, and the Rust compiler infrastructure that makes it all work.

11 min Mar 26, 2026
flinunion-typestype-narrowingtype-system
Thales & Claude flin

#033 -- Generic Types in FLIN

How we implemented generic types in FLIN -- type parameters, generic functions, generic type aliases, and the lexer trick that distinguishes Option<T> from <div>.

10 min Mar 26, 2026
flingenericstype-parameterspolymorphism
Thales & Claude flin

#038 -- The Pipeline Operator: Functional Composition in FLIN

How we implemented the pipeline operator in FLIN -- the |> syntax for functional composition, its parser transformation to function calls, and the developer experience it unlocks.

10 min Mar 26, 2026
flinpipelinefunctionalcomposition
Thales & Claude flin

#039 -- Tuples, Enums, and Structs

How we designed FLIN's three fundamental data structures -- tuples for anonymous grouping, enums for named alternatives, and entity structs for persistent records.

10 min Mar 26, 2026
flintuplesenumsstructs +1
Thales & Claude flin

#040 -- Type Guards and Runtime Type Narrowing

How FLIN's is operator enables runtime type checking with compile-time type narrowing -- the bridge between dynamic values and static safety.

9 min Mar 26, 2026
flintype-guardsnarrowingruntime
Thales & Claude flin

#023 -- Closures and Higher-Order Functions in the VM

Implementing closures and higher-order functions in FLIN's virtual machine: upvalues and capture semantics.

11 min Mar 26, 2026
flinclosureshigher-order-functionsfunctional +2
Thales & Claude flin

#024 -- How the VM Executes Views

How FLIN's VM executes views: from bytecode opcodes to HTML rendering with reactive attribute binding.

11 min Mar 26, 2026
flinviewsrenderinghtml +3
Thales & Claude flin

#025 -- The Complete FLIN Opcode Reference

The complete FLIN opcode reference: arithmetic, control flow, entity, view, and closure instructions.

17 min Mar 26, 2026
flinopcodesbytecodereference +2
Thales & Claude flin

#026 -- Hot Module Reload in 42ms

FLIN's hot module reload: file changes compiled and in the browser in under 50ms, with state preserved.

11 min Mar 26, 2026
flinhot-reloadhmrdeveloper-experience +2
Thales & Claude flin

#027 -- Async and Concurrency in the VM

Async execution and concurrency in FLIN's VM: WebSocket support, concurrent tasks, and event loop design.

11 min Mar 26, 2026
flinasyncconcurrencywebsocket +2
Thales & Claude flin

#029 -- The First Browser Render: When FLIN Met the DOM

The first time FLIN rendered in the browser: compiling bytecode to HTML, the milestone of Session 26.

10 min Mar 26, 2026
flinbrowserrenderhtml +2
Thales & Claude flin

#030 -- Parallel Agents in the FLIN Runtime

FLIN's parallel agent system: concurrent execution, message passing, and the agent-based runtime model.

11 min Mar 26, 2026
flinagentsconcurrencyparallel +2