KromScript 1.0.0 — Stable, sûr, prêt pour la production
Première version stable de KromScript. Après la série 0.x, le langage embarqué qui fait vivre les mini-apps Krom entre en 1.0 : API figée, sûreté par défaut et un langage nettement plus expressif — sur Dart, Kotlin, Go et TypeScript.
✨ Un langage plus complet et plus ergonomique
- Chaînes
else if— fini lesifimbriqués. - Affectations composées :
+=,-=,*=,/=. - Opérateur ternaire :
cond ? a : b. for-insur les maps — itère directement sur les clés.- Natif
range()pour les boucles numériques. - Commentaires bloc
/* ... */. - Affichage des nombres entiers sans
.0:4, plus4.0— untoStringenfin naturel dans les vues (interpolation,+,print,join, clés de map).jsonStringifyreste inchangé (format réseau préservé).
🛡️ Sûr par défaut
- Garde d'exécution activée d'office : budget d'opérations + deadline. Un script tiers ne peut plus figer l'hôte.
ExecutionLimits.unlimitedreste disponible pour du code de confiance. print()est désormais aussi routé vers la sortie standard, en plus dedeveloper.log, pour un débogage sans friction.
🔎 Optimiseur durci et introspectable
- Correction de plusieurs bugs de fausse suppression / transformation de l'optimiseur (propagation de constantes dans boucles et closures, inlining capturant un paramètre, round-trip du
elseaprès optimisation…). - Les hooks de cycle de vie (
onInit/onShow/onHide/onDispose) sont préservés au tree-shaking. - Introspection réactive pour l'hôte :
reactiveState()/setReactiveValue()pour lire et piloter l'état,lastOpsUsed/maxOperationspour instrumenter le budget.
🌍 Multi-plateforme
Même langage, quatre implémentations : Dart/Flutter, Kotlin (Maven Central), Go (pkg.go.dev), TypeScript (npm).
📖 Documentation
Guide complet : https://docs-kodiscript.dickode.net/
Rien à migrer depuis 0.2.0 : ces ajouts sont rétrocompatibles.