diff --git a/TODO.org b/TODO.org index 0c7d09eb..a192e5df 100644 --- a/TODO.org +++ b/TODO.org @@ -27,8 +27,12 @@ when stale, a release build does not. Waits on the dyn-unless-annotated design. ** NEXT Dyn unless annotated Decided 2026-09-25: in both syntaxes an unannotated value is dyn — [6 2 4 9] is a dyn -vector, 1 a dyn integer — and a typed value needs an annotation. Rules and migration -wait on a design pass. +vector, 1 a dyn integer — and a typed value needs an annotation. Decided 2026-09-26: +the plain rule — a literal is dyn wherever nothing wants a type, typed functions +included; a value from a typed source keeps its type; for/dotimes counters stay i32; a +warning marks a dyn let meeting typed code in a typed function. Migration in the +design's order: str rename, views of any type, dyn-meets-typed fixes, literals built +once, the switch with the warning, annotation script, flip, String. ** DONE Dynamic-first, and the dyn half of the language CLOSED: [2026-09-20]