|
|
4d3688a519
|
Merge master into the .fln mode lane; a .fln arm sends its match whenever its value uses any name the pattern has, C-c C-s steps a .fln top-level form, and a comment block directly above a form is part of its text objects
|
2026-09-25 20:53:48 +07:00 |
|
|
|
8c814b39c1
|
.fln files open in flan-fln-mode, which evaluates, moves over, indents and edits statements, clauses and top-level forms, and every Flan mode derives from flan-base-mode
|
2026-09-25 17:13:12 +07:00 |
|
|
|
4c336687ef
|
Master's error recovery is merged, and the refusal memos are consulted only where a refusal is raised
|
2026-09-25 17:03:32 +07:00 |
|
|
|
4b64dc5f65
|
Code-carrying dev requests name their syntax and starting line and column, so a .fln snippet sent from the middle of a buffer reads with the buffer's own locations
|
2026-09-25 15:57:09 +07:00 |
|
|
|
25e303caf4
|
Master's indented reader is merged, and its x += v over a place with a call in it reads as update, evaluating the place once
|
2026-09-25 15:56:51 +07:00 |
|
|
|
074b2da6f3
|
The indented reader refuses a continuation line that is not deeper than its statement, takes one-line statements in arms, then/else and defer, typed lets and bare-name blocks, and names the shape it wanted where it used to say two values cannot sit side by side
|
2026-09-25 15:30:52 +07:00 |
|
|
|
8cc63ed9f6
|
A place in update, ++ and -- evaluates each of its subexpressions once, and (update place f args ...) stores (f old args ...) back into it
|
2026-09-25 15:26:27 +07:00 |
|
|
|
d7016f91c7
|
A .fln file is read by an indented reader that yields the paren reader's forms, every program entry point picks the reader by extension, and flan convert prints either syntax as the other
|
2026-09-25 15:04:32 +07:00 |
|
|
|
22d2a4cfb2
|
An indented surface beside s-expressions is specified as a second reader chosen by file extension
|
2026-09-25 14:21:51 +07:00 |
|