FLIN
The language that replaces 47 technologies
A compiled, full-stack programming language built from scratch in Rust. One syntax for frontend, backend, database, and tooling. 3,200+ tests. 180 embedded UI components. Zero npm dependencies.
Building FLIN
Closures and Higher-Order Functions in the VM
Implementing closures and higher-order functions in FLIN's virtual machine: upvalues and capture semantics.
How the VM Executes Views
How FLIN's VM executes views: from bytecode opcodes to HTML rendering with reactive attribute binding.
Generic Bounds and Where Clauses
How FLIN implements generic bounds and where clauses -- constraining type parameters with traits, merging inline and where syntax, and validating constraints at compile time.
While-Let Loops and Break With Value
How we implemented while-let loops and break-with-value in FLIN -- pattern-driven iteration and loops that produce values, inspired by Rust's control flow.
Labeled Loops and Or-Patterns
How we implemented labeled loops and or-patterns in FLIN -- breaking from outer loops by name, combining match arms with pipe syntax, and the compiler changes that support them.
Every Entity Remembers Everything: The Temporal Model
How we designed FLIN's temporal model so every entity automatically tracks its complete history -- zero configuration, zero boilerplate, full time-travel out of the box.
Version History and Time Travel Queries
Deep dive into FLIN's @ operator for time-travel queries, the .history property, and how we made accessing past entity states as natural as reading current ones.
Temporal Integration: From Bugs to 100% Test Coverage
The honest war story of how eight sessions of debugging, auditing, and fixing brought FLIN's temporal model from a broken stub to 100% test coverage.
Destroy and Restore: Soft Deletes Done Right
How FLIN implements three tiers of data deletion -- soft delete, hard delete (destroy), and restore -- with GDPR compliance built into the language.
Temporal Filtering and Ordering
How we added filtering and ordering to FLIN's temporal history queries -- from the design decision to avoid lambdas, to the VM implementation of ListFilterField and ListOrderBy.
Temporal Comparison Helpers
How we built six native helper functions for temporal comparisons in FLIN -- field_changed, calculate_delta, percent_change, changed_from, value_changed, and field_history.
FLIN: The Language That Replaces 47 Technologies
One language for frontend, backend, database, and tooling. Built from scratch in Rust with 3,200+ tests. No npm. No Webpack. No framework fatigue.