|
|
00fd022330
|
A call through a null CFn parks a dev program in the break loop with NullCall named and continue takeable, on LLVM and x86
|
2026-09-25 16:37:05 +07:00 |
|
|
|
83dc716133
|
A program's or a session's defn named as a macro shadows the macro for its calls, with the shadowing warning a prelude function gets
|
2026-09-25 16:32:49 +07:00 |
|
|
|
7b3e7f0efa
|
A program's global or type cannot change what the prelude means: a type variable wins over a global in a type position, prelude signatures pair against prelude types, and a global or type spelled like a built-in type is refused
|
2026-09-25 16:22:27 +07:00 |
|
|
|
8fe2a666a1
|
A refused if is answered from memory for the same condition, scope and expectation, so a refused or/and chain is checked in linear time
|
2026-09-25 16:09:31 +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 |
|
|
|
d46067962d
|
A Vec or Map parameter the function grows with push, reserve or put is warned at the parameter, naming the (Ptr ...) that reaches the caller's container
|
2026-09-25 15:41:42 +07:00 |
|
|
|
e616a29ceb
|
A parameter vector paired by a lowercase type the program declares is warned at, naming the type and where it is declared
|
2026-09-25 15:37:26 +07:00 |
|
|
|
1716b146cd
|
A condition check_truthy has already refused is refused again from memory, so a retry through nested not is linear and keeps its message
|
2026-09-25 15:35:36 +07:00 |
|
|
|
23af8a4dd3
|
A bool arm and a dyn arm of an if meet at dyn with the bool boxed, so (or false (box "s")) answers "s"
|
2026-09-25 15:31:12 +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 |
|
|
|
f6ba1e6c4d
|
A CFn may sit in a struct field, a fixed array or a global, and a call through a null one signals NullCall on both backends
|
2026-09-25 15:26:27 +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 |
|
|
|
b8c81d94ee
|
enum? admits exactly the enums, entails ordered? and equal?, and licenses a generic conversion from an enum to a number beside numeric?
|
2026-09-25 15:26:27 +07:00 |
|
|
|
58d1e35225
|
A local of a package's type is named by its qualified type in the break buffer's listing and the inspector, pinned by a shape/Box local in dev-inspect.flan
|
2026-09-25 15:22:48 +07:00 |
|
|
|
5b8c4a68fa
|
into refuses to copy elements that own storage as they stand, and names (map clone) where clone takes the element
|
2026-09-25 15:22:44 +07:00 |
|
|
|
82b02b6584
|
Merge branch 'master' into worktree-agent-ab75070e065de0e53
|
2026-09-25 15:21:12 +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 |
|
|
|
e2aa0196cf
|
Conditions have parents under Error, restarts carry where and why, and a handler reads the message with its values
|
2026-09-25 14:51:18 +07:00 |
|
|
|
1bada92870
|
A handled condition's sentence is consumed when it is copied, and the class-slot, migration and destroyed-allocator traps put their own sentence on the wire
|
2026-09-25 14:48:46 +07:00 |
|
|
|
610e9fcf9d
|
A parent's handler reads a name and message made in context/temp, whole and good until the frame ends, and the handler-case landing no longer holds a buffer of its own
|
2026-09-25 14:36:46 +07:00 |
|
|
|
409c5f5c0d
|
A read-only slice's diagnostics name (clone v) wherever clone copies the element type
|
2026-09-25 14:31:21 +07:00 |
|
|
|
b6dbc08c78
|
An expression at a stop that destroys the program's temp arena leaves context/temp empty rather than restoring the destroyed record
|
2026-09-25 14:26:31 +07:00 |
|
|
|
5646ae148e
|
Merge master; an expression evaluated at a stop runs against a scratch temp arena that is wiped after it, and the program's own temp arena is never rolled back
|
2026-09-25 14:09:30 +07:00 |
|
|
|
38055b8fdc
|
A file with no main opens a session, and a crash in an evaluated expression leaves the session running
|
2026-09-25 14:04:14 +07:00 |
|
|
|
9373c43113
|
The nested-overflow test waits for the outer break to be on top instead of sleeping, and names a session that dies
|
2026-09-25 13:56:11 +07:00 |
|
|
|
46a89aac0c
|
An expression evaluated at a stop rolls the temp allocator back to where it was, so its own text is reclaimed and the stopped frames' text survives
|
2026-09-25 13:54:07 +07:00 |
|
|
|
8bb2885e63
|
An abandoned evaluation puts the context allocator back, and a fault's break loop runs on a guarded stack of its own so a runaway recursion evaluated there is another break rather than a dead session
|
2026-09-25 13:49:24 +07:00 |
|
|
|
a0a86d0b80
|
The temp allocator grows a block that outgrows its chunk, answers a formatted number with one bump allocation, poisons what a dev wipe releases, and is wiped after each expression run while parked
|
2026-09-25 13:47:00 +07:00 |
|
|
|
a4e45d9a78
|
A message longer than its buffer is cut at a character and ends in an ellipsis, and the break loop and the unhandled message use the full text
|
2026-09-25 13:41:58 +07:00 |
|
|
|
b2eb81f7bf
|
A slice or pointer can be read-only, and what it reaches cannot be written through it
|
2026-09-25 13:39:04 +07:00 |
|
|
|
5a78cdd202
|
Merge master
|
2026-09-25 13:36:54 +07:00 |
|
|
|
d2f25a6e44
|
Merge branch 'master' into worktree-agent-a9288676abb278ffb
|
2026-09-25 13:35:10 +07:00 |
|
|
|
f3d969618d
|
A class slot can carry a type, and set writes a declared slot
|
2026-09-25 13:32:16 +07:00 |
|
|
|
c6ad71dc5b
|
A value that owns storage is never copied out of read-only storage, and two arguments at one type variable meet at const
|
2026-09-25 13:30:47 +07:00 |
|
|
|
5066b8d288
|
The literal an array cannot hold is the element blamed, a negative literal in a generic body names a fix for every instantiation, and a doubly negated literal is positive
|
2026-09-25 13:29:42 +07:00 |
|
|
|
53880eb685
|
A class slot's type names its own package's class first, an int widens into a float slot exactly when it round-trips, and a constructor's refusal names the call that was wrong
|
2026-09-25 13:29:30 +07:00 |
|
|
|
639ff1859c
|
Aborting an expression that trapped in the park abandons it by a jump back to the poll that called it, and the session stays
|
2026-09-25 13:28:16 +07:00 |
|
|
|
3e09a1f722
|
Merge branch 'master' into worktree-agent-ac750a5e83cab251b
|
2026-09-25 13:18:42 +07:00 |
|
|
|
9d6694fd92
|
Merge master: an evaluated expression's lifted bodies are placed with its thunk
|
2026-09-25 13:18:40 +07:00 |
|
|
|
9aeee9d676
|
Merge branch 'master' into worktree-agent-a6ffe579d55d1892b
|
2026-09-25 13:16:58 +07:00 |
|
|
|
d864818956
|
A handler for a parent reads the condition's own name and message or the condition printed with its values, kept in the handler-case's own frame across the unwind, and a frame re-entered through a signal or a C call names where it is
|
2026-09-25 13:16:35 +07:00 |
|
|
|
0358f6637c
|
Merge branch 'master' into worktree-agent-ad097f67134ba0552
|
2026-09-25 13:15:36 +07:00 |
|
|
|
1998f57ca8
|
Merge branch 'master' into worktree-agent-ac49c2c6835655472
|
2026-09-25 13:14:44 +07:00 |
|
|
|
1e5be63a1a
|
An array reached through read-only storage slices to a [const T], a Vec or Map copied out of one stays read-only through lets, and an if's const and writable branches meet at const in either order
|
2026-09-25 13:08:29 +07:00 |
|
|
|
02e4fef830
|
i64->bytes and f64->bytes allocate from a growing temp allocator that (free-temp) releases once a frame and a dev build's agent poll wipes, so a number drawn every frame no longer leaks
|
2026-09-25 13:07:21 +07:00 |
|
|
|
f87d596bdc
|
A file with a broken form still starts a session, a package's macros expand bare from its file, a delivery a running program never polls for says so with a fix that compiles, and aborting an expression stopped in the park abandons it and keeps the session
|
2026-09-25 13:06:36 +07:00 |
|
|
|
9394a26449
|
A negative literal fits no unsigned type, u64 included, and the refusal names the cast that writes its bit pattern, which a constant now folds
|
2026-09-25 13:02:50 +07:00 |
|
|
|
325c3662a8
|
A numeric type's limits are (max-value T) and (min-value T), and an array literal of numbers with no common type is refused with the conversion named
|
2026-09-25 12:56:02 +07:00 |
|
|
|
e7b01ea01c
|
Merge branch 'master' into worktree-agent-adcfc27e0ceac8df4
|
2026-09-25 12:55:56 +07:00 |
|
|
|
9ba99d7d5b
|
A dev build puts every closure handed to a named call on the collector's heap, since a redefinition can make the callee keep it
|
2026-09-25 12:55:56 +07:00 |
|