Flin

All Flin articles.

Thales & Claude flin

Gardes de type et rétrécissement de type à l'exécution

Comment l'opérateur is de FLIN permet la vérification de type à l'exécution avec le rétrécissement de type au moment de la compilation -- le pont entre les valeurs dynamiques et la sécurité statique.

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

Le type Never et la vérification d'exhaustivité

Comment le type Never de FLIN et la vérification d'exhaustivité fonctionnent ensemble pour garantir que chaque chemin de code est pris en charge -- le filet de sécurité imposé par le compilateur pour le filtrage par motifs et le flux de contrôle.

11 min Mar 26, 2026
flinnever-typeexhaustivenesssafety
Thales & Claude flin

Bornes génériques et clauses Where

Comment FLIN implémente les bornes génériques et les clauses where -- contraindre les paramètres de type avec des traits, fusionner les syntaxes inline et where, et valider les contraintes à la compilation.

10 min Mar 26, 2026
flingenericsboundswhere-clauses +1
Thales & Claude flin

Boucles While-Let et Break avec valeur

Comment nous avons implémenté les boucles while-let et le break avec valeur dans FLIN -- l'itération pilotée par motifs et les boucles qui produisent des valeurs, inspirées du flux de contrôle de Rust.

10 min Mar 26, 2026
flinwhile-letbreakcontrol-flow
Thales & Claude flin

Boucles étiquetées et motifs Or

Comment nous avons implémenté les boucles étiquetées et les motifs Or dans FLIN -- sortir des boucles externes par nom, combiner des bras de match avec la syntaxe pipe, et les changements du compilateur qui les supportent.

12 min Mar 26, 2026
flinlabeled-loopsor-patternscontrol-flow
Thales & Claude flin

Historique des versions et requêtes de voyage dans le temps

Plongée approfondie dans l'opérateur @ de FLIN pour les requêtes de voyage dans le temps, la propriété .history, et comment nous avons rendu l'accès aux états passés des entités aussi naturel que la lecture des états courants.

7 min Mar 26, 2026
flintime-travelhistoryat-time +1
Thales & Claude flin

Intégration temporelle : des bugs à 100 % de couverture de tests

Le récit honnête de huit sessions de débogage, d'audit et de corrections qui ont porté le modèle temporel de FLIN d'un stub cassé à 100 % de couverture de tests.

6 min Mar 26, 2026
flintemporaltestingdebugging +1
Thales & Claude flin

Destroy et Restore : la suppression douce bien faite

Comment FLIN implémente trois niveaux de suppression de données -- suppression douce, suppression dure (destroy) et restauration -- avec la conformité RGPD intégrée au langage.

4 min Mar 26, 2026
flinsoft-deletedestroyrestore +1
Thales & Claude flin

Filtrage et tri temporels

Comment nous avons ajouté le filtrage et le tri aux requêtes d'historique temporel de FLIN -- de la décision de conception d'éviter les lambdas à l'implémentation VM de ListFilterField et ListOrderBy.

4 min Mar 26, 2026
flintemporalfilteringordering +1
Thales & Claude flin

Fonctions de comparaison temporelle

Comment nous avons construit six fonctions natives de comparaison temporelle dans FLIN -- field_changed, calculate_delta, percent_change, changed_from, value_changed et field_history.

12 min Mar 26, 2026
flintemporalcomparisonhelpers +1
Thales & Claude flin

Accès aux métadonnées de version

Comment nous avons exposé les métadonnées de version des entités -- id, version_number, created_at, updated_at, deleted_at -- comme propriétés de première classe dans FLIN, permettant des pistes d'audit sans configuration.

13 min Mar 26, 2026
flintemporalmetadataversioning +1
Thales & Claude flin

Le modèle temporel complet : ce qu'aucun autre langage n'offre

Rétrospective du modèle temporel complet de FLIN -- 152 sur 160 tâches, 10 catégories à 100 %, et pourquoi aucun autre langage de programmation n'offre le versionnement automatique, les requêtes de voyage dans le temps et l'analytique temporelle comme primitives du langage.

14 min Mar 26, 2026
flintemporalcompleteretrospective +1