Flin
All Flin articles.
Audit des fonctions, jour 7 terminé
Le jour 7 de l'audit des fonctions de FLIN a révélé 95 % de couverture bytecode mais seulement 12 % d'accessibilité dans les templates -- et comment nous avons comblé le fossé avec plus de 70 expositions de fonctions.
Le bug de gestion du None
Comment le modèle temporel de FLIN était bloqué par une correction de 10 lignes -- l'accès aux propriétés sur les valeurs None lançait des erreurs au lieu de se propager gracieusement.
Le bug de rendu des espaces blancs HTML
Comment le lexer de FLIN mangeait silencieusement les espaces blancs entre le texte et les liaisons dynamiques, causant l'échec de 23 tests temporels sur une logique correcte.
Quand la VM s'est bloquée sur la création d'entités
Comment le système d'actions de FLIN a créé une condition de type deadlock où la création d'entités dans les fonctions échouait silencieusement, et le travail de détective qui l'a tracé.
Le bug de suivi des versions temporelles
Comment un écart de synchronisation des numéros de version entre la VM et la base de données de FLIN faisait que l'accès temporel retournait toujours None -- et le principe de conception qu'il a révélé.
La correction de persistance qui a pris 3 sessions
Trois sessions, trois causes racines, un objectif : faire en sorte que l'application todo de FLIN sauvegarde réellement les données sur disque. La saga de la persistance du navigateur à la base de données.
La crise du choix du modèle d'embeddings
Comment le choix du modèle d'embeddings de FLIN était contraint par la disponibilité des bibliothèques -- et l'architecture que nous avons construite pour changer de modèle sans casser les applications.
15 bugs qui ont façonné le langage FLIN
Une rétrospective sur 15 bugs critiques qui ont façonné la conception de FLIN -- des opcodes manquants à la sémantique booléenne du None, chaque échec a rendu le langage plus fort.
Le pipeline de compilation complet, de bout en bout
Le pipeline de compilation complet de FLIN : six phases du code source à l'application en cours d'exécution, expliquées de bout en bout.
Le format binaire .flinc
Un plongeon en profondeur dans le format binaire .flinc -- le bytecode compilé de FLIN avec nombres magiques, pools de constantes, infos de débogage RLE et checksums CRC32.
Littéraux de templates et formatage de chaînes
Comment FLIN implémente deux systèmes d'interpolation de chaînes -- les littéraux de templates avec backticks et le formatage de chaînes avec guillemets doubles -- avec une stratégie de tokens partagée et un parsing sensible au mode.
Mise en cache des résultats de recherche
Comment le système de mise en cache des résultats de recherche de FLIN utilise l'éviction LRU, l'expiration TTL et l'invalidation tenant compte des entités pour éliminer les calculs de recherche redondants.