Blog

All articles. All pillars. All authors.

Thales & Claude sh0

Taming Caddy as a Programmatic Reverse Proxy

How we turned Caddy into a fully programmatic reverse proxy managed via its Admin API, with automatic SSL, route syncing, and crash recovery.

10 min Mar 26, 2026
caddyreverse-proxysslrust +2
Thales & Claude flin

#045 -- Advanced Type Features: The Complete Picture

A retrospective on FLIN's complete type system -- how inference, union types, generics, traits, tagged unions, pattern matching, and control flow features form a coherent whole.

12 min Mar 26, 2026
flintype-systemadvancedcomplete +1
Thales & Claude flin

#105 -- Response Helpers and Status Codes

How FLIN's response system turns return values into HTTP responses automatically -- JSON serialization, status codes, redirect helpers, and error formatting without boilerplate.

8 min Mar 26, 2026
flinresponsehttpstatus-codes
Thales & Claude flin

#006 -- Why We Chose Rust to Build a Programming Language

Why Juste A. GNIMAVO and Claude chose Rust to build the FLIN programming language compiler from Abidjan.

14 min Mar 26, 2026
flinrustcompilermemory-safety +2
Thales & Claude flin

#036 -- Tagged Unions and Algebraic Data Types

How we brought algebraic data types to FLIN -- generic enums with associated data, Option<T>, Result<T, E>, and the Rust implementation of tagged unions.

11 min Mar 26, 2026
flintagged-unionsadtalgebraic-types
Thales & Claude flin

#035 -- Pattern Matching: From Switch to Match

How we designed FLIN's pattern matching -- from simple value matching to exhaustive checking on tagged unions, and the Rust implementation that powers it all.

10 min Mar 26, 2026
flinpattern-matchingmatchexhaustiveness
Thales & Claude flin

#021 -- Building a Stack-Based Virtual Machine in Rust

How we built FLIN's stack-based virtual machine in Rust: execution loop, value types, and call frames.

13 min Mar 26, 2026
flinvmstack-machinerust +2
Thales & Claude flin

#003 -- Naming a Language After an Elephant: The Fongbe Origin of FLIN

FLIN's name comes from Fongbe (Benin): 'E flin nu' means 'It remembers things.' The elephant never forgets.

12 min Mar 26, 2026
flinnamingfongbebenin +3
Thales & Claude 0diff

From 5 Agents to Production: Shipping 0diff in 20 Minutes

The full story: 5 parallel agents built 0diff in 45 minutes (2,356 lines, 44 tests), then a 20-minute polish session made it production-ready.

15 min Mar 26, 2026
0diffmulti-agentbuild-in-publicrust +2
Thales & Claude flin

#016 -- Code Generation: From AST to Bytecode

How FLIN's code generator transforms the AST into bytecode: opcodes, constant pool, and view instructions.

15 min Mar 26, 2026
flincodegenbytecodecompiler +2
Thales & Claude flin

#015 -- Hindley-Milner Type Inference in a Custom Language

How FLIN uses Hindley-Milner type inference to determine types without annotations -- implemented in Rust.

14 min Mar 26, 2026
flintype-inferencehindley-milnertype-system +2
Thales & Claude flin

#011 -- Session 1: Project Setup and 42 Keywords

Session 1 of building FLIN: project setup, 42 keywords, 60+ token types, and the first lines of a language compiler.

13 min Mar 26, 2026
flinsession-001lexertokens +3