Flin
All Flin articles.
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.
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.
Arithmétique temporelle : ajouter des jours, comparer des dates
Comment nous avons implémenté les littéraux de durée et l'arithmétique temporelle dans FLIN -- de l'élégante syntaxe N.days au constant folding à la compilation, offrant des abstractions à coût zéro pour les opérations de dates.
Précision du suivi et validation
Comment la session 079 a révélé que le modèle temporel de FLIN était plus avancé que documenté -- et les leçons tirées sur la précision du suivi, la validation et le danger de la documentation obsolète.
Des entités, pas des tables : comment FlinDB pense les données
Pourquoi FlinDB utilise une conception centrée sur les entités plutôt que des schémas SQL centrés sur les tables -- et comment ce changement fondamental transforme tout dans le développement d'applications.
CRUD sans SQL
Comment FlinDB implémente les opérations de création, lecture, mise à jour et suppression sans une seule ligne de SQL -- et l'implémentation de la session 160 qui a rendu cela possible.
Contraintes et validation dans FlinDB
Comment FlinDB applique l'intégrité des données avec des contraintes déclaratives -- unique, required, check, pattern, immutable et plus -- le tout sans écrire un seul trigger SQL.
Agrégations et analytique
Comment nous avons ajouté les fonctions d'agrégation, GROUP BY, DISTINCT et les opérateurs IN/NOT IN à FlinDB en une seule session -- rendant l'analytique embarquée possible sans SQL.
Utilisation des index : accélérer les requêtes
Comment la session 163 a transformé les requêtes FlinDB de scans complets O(n) en recherches d'index O(1) -- indexation automatique, optimisation de requêtes et maintenance des index dans une base de données embarquée.
Relations et chargement Eager/Lazy
Comment FlinDB gère les relations entre entités avec le chargement eager, la résolution lazy, les requêtes inverses et l'auto-indexation -- le tout sans jointures SQL.
Transactions et sauvegarde continue
Comment nous avons implémenté les transactions ACID avec points de sauvegarde, les sauvegardes complètes et incrémentales avec compression Zstd, le streaming WAL continu et la rotation programmée des sauvegardes dans FlinDB.
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.