.fln is queued to become the only source language, with Swift optionals and no ? or ! in names.

This commit is contained in:
Joseph Ferano 2026-09-26 14:03:10 +07:00
parent ce0068c0f7
commit 398bd7b851

View File

@ -10,6 +10,14 @@ pointing at it. A CANCELLED entry carries the one-line reason, because an idea
rejected without a record is an idea that gets re-proposed.
* Language surface
** NEXT .fln is the only source language
Decided 2026-09-26 (130): the .flan syntax is retired. .fln names carry no =?= or =!=;
predicates are =is-=/=has-=, and the raylib generator emits =is-key-pressed=. Swift
optionals: =T?= for =Option(T)=, =x ?? d=, =x!= (traps when absent), =if let g = x=
(binds the payload), and chaining =a?.b=. Order: optionals and the name rule; the
prelude and vendor rewritten in .fln; tests and examples converted with =flan convert=;
then =flan convert=, the .flan source path and =flan-mode= removed. Nothing tracks what
.flan can no longer say.
** WAIT A cheap front for dyn sequences
Decided 2026-09-26 (128) to pause: dyn vectors are mutable, so taking from the front
shifts every element. Options were a linked list (cons/first/rest) or storing the dyn