|
|
3e504deb6f
|
An arm is checked at the other arm's type first and meets it at the join only when refused there, so every program master accepts keeps its type and value while arms still meet in either order
|
2026-09-25 23:10:16 +07:00 |
|
|
|
319a3c78c4
|
Merge branch 'master' into worktree-agent-a46233a32d1912c78
|
2026-09-25 22:40:48 +07:00 |
|
|
|
a14e633a21
|
A pointer's element type can be cast and a slice made from a pointer and a count with slice-from
|
2026-09-25 22:35:34 +07:00 |
|
|
|
a39d96149d
|
slice-from-ptr is refused with the slice-from call to write, and the pointer cast's const rule is documented as covering the outer pointer only
|
2026-09-25 22:35:24 +07:00 |
|
|
|
70b9040512
|
type-of answers a dyn value's kind as a keyword, and a class cannot be named after a built-in kind
|
2026-09-25 22:29:26 +07:00 |
|
|
|
41273c9d22
|
Dyn and typed containers print without a space after the bracket, and a value that cannot cross into dyn gets a fix that compiles
|
2026-09-25 22:27:53 +07:00 |
|
|
|
35aa5a8c0f
|
A refused dyn view of a global names its own defining form as the fix, and every dyn fix is spelled in the syntax the code was written in
|
2026-09-25 22:27:36 +07:00 |
|
|
|
24761dcf54
|
rl/update-texture-colors remains, as a one-line defn over the pointer cast
|
2026-09-25 22:27:21 +07:00 |
|
|
|
4b1e722854
|
slice-from makes a slice from a pointer and any integer count, and ((Ptr U) p) casts a pointer's element type without dropping const
|
2026-09-25 22:24:11 +07:00 |
|
|
|
c1b21edaf4
|
The break loop's typed-value walk prints arrays and slices as [1 2 3], matching evaluation
|
2026-09-25 22:18:45 +07:00 |
|
|
|
e80411d283
|
type-of answers a value's kind as a keyword or an instance's class name, and a class named like a kind is refused.
|
2026-09-25 22:18:36 +07:00 |
|
|
|
47cc213b42
|
Return types read off the body and the converter's latest fixtures live together
|
2026-09-25 22:14:32 +07:00 |
|
|
|
ff0679cbb1
|
An if's else arm is checked once and brought to the join, an abandoned check undoes only what it wrote, and an arm refused at the join says why at its value
|
2026-09-25 22:14:06 +07:00 |
|
|
|
a1e5e39dba
|
Master's changes are merged into the dyn printing lane, with its converter fixture
|
2026-09-25 22:11:04 +07:00 |
|
|
|
d16fe79b79
|
A refused dyn view of a parameter names its declaration as the fix
|
2026-09-25 22:09:44 +07:00 |
|
|
|
8aaf33589e
|
type-of is queued
|
2026-09-25 22:04:28 +07:00 |
|
|
|
5adabd9f3c
|
Dyn text is immutable and counts characters, str counts bytes
|
2026-09-25 22:03:26 +07:00 |
|
|
|
85283c2e87
|
Any typed container crosses into dyn as a view
|
2026-09-25 22:02:04 +07:00 |
|
|
|
c3d36b5108
|
The inspector reads memory directly, a trapped read shows as trapped without a break, and requests take effect in the order the client sent them
|
2026-09-25 22:01:53 +07:00 |
|
|
|
4f060bb648
|
Dyn and typed containers print as [1 2 3] and {:a 1}, a refused dyn view names the value and a dyn fix in the file's own syntax, and a dyn function whose body gives no value says so by name
|
2026-09-25 22:01:40 +07:00 |
|
|
|
cf8fea9b3c
|
docs/BUILT.md says a restart is taken after the jobs queued before it.
|
2026-09-25 22:01:15 +07:00 |
|
|
|
c9b556a539
|
A restart is taken only after every job queued before it was accepted has run, and a choice waiting for an outer break survives a nested one, so a fix loaded just before retry is the body the retry runs.
|
2026-09-25 22:01:08 +07:00 |
|
|
|
af6e00bc2a
|
= compares bools, a match over a bool takes true and false, and a match over a dyn takes keyword arms
|
2026-09-25 22:00:51 +07:00 |
|
|
|
1cfe97548a
|
test/syntax/algorithms.fln is the converter's fixture again
|
2026-09-25 22:00:44 +07:00 |
|
|
|
cecbec6c71
|
A slice from a C pointer and a pointer cast are queued
|
2026-09-25 22:00:13 +07:00 |
|
|
|
cc45b8a55d
|
Dyn has a character type
|
2026-09-25 21:57:37 +07:00 |
|
|
|
2dec18b87f
|
The typed text types are str and String
|
2026-09-25 21:54:26 +07:00 |
|
|
|
d8ece682d3
|
Merge master
|
2026-09-25 21:51:08 +07:00 |
|
|
|
e81191d770
|
A bool returned from C reads as its low bit on --x86 as on LLVM, and the where-and fix and the x-1 hint follow the code's own syntax rather than its file name
|
2026-09-25 21:50:56 +07:00 |
|
|
|
bb800903d8
|
Return types read off the body and frame-escape refusals live together
|
2026-09-25 21:49:14 +07:00 |
|
|
|
7bc04cc434
|
Flan is dyn unless annotated
|
2026-09-25 21:43:21 +07:00 |
|
|
|
c3a05d7447
|
The site says a match over a bool needs no _ arm
|
2026-09-25 21:37:44 +07:00 |
|
|
|
18581a452c
|
= and != compare bools, a match over a bool takes true and false arms, a match over a dyn takes keyword arms, and where predicates joined with and are refused with the comma or vector form as the fix
|
2026-09-25 21:35:31 +07:00 |
|
|
|
94134da25a
|
Dyn containers print without a space after the bracket, queued
|
2026-09-25 21:32:46 +07:00 |
|
|
|
d991e1986c
|
Flat lets and one-argument and/or in the .fln printer are queued
|
2026-09-25 21:27:50 +07:00 |
|
|
|
d77d541360
|
A value that traps or faults while the inspector reads it shows as #<trapped: NAME> with no break pushed, a restart already accepted is taken before queued reads run, and a fault in the inspector's read names the read.
|
2026-09-25 21:27:24 +07:00 |
|
|
|
ed7258c80f
|
An abandoned check puts back everything it wrote into the environment, an else arm refused on its own terms is not blamed for the then arm's type, and a match's arms meet at the same join as an if's
|
2026-09-25 21:26:56 +07:00 |
|
|
|
d574031609
|
Keyword arms over a dyn and = on bool are queued
|
2026-09-25 21:23:50 +07:00 |
|
|
|
d4f24adbc8
|
A function cannot return or store in a global the address of its own frame, and a dev build poisons every arena's bytes on free-all
|
2026-09-25 21:19:13 +07:00 |
|
|
|
ab5fe36a48
|
A frame address stored into a global's field, array or Vec element, or pushed or put into a global container is refused with a fix that names no wrong type, and the sanitizer sweep builds at -O0 so a read of a returned frame reports
|
2026-09-25 21:18:48 +07:00 |
|
|
|
bd70dfa913
|
Merge branch 'master' into worktree-agent-a9ad2e8b56d1fbd10
|
2026-09-25 21:18:18 +07:00 |
|
|
|
4fa11f6360
|
Merge master
|
2026-09-25 21:11:31 +07:00 |
|
|
|
0fc258c434
|
Merge branch 'master' into worktree-agent-a46233a32d1912c78
|
2026-09-25 21:11:17 +07:00 |
|
|
|
3001aadff3
|
.fln files open in flan-fln-mode, which evaluates, moves over, indents and edits their statements, clauses and top-level forms
|
2026-09-25 21:07:16 +07:00 |
|
|
|
5c044a7b40
|
id and ad on a comment that belongs to no form find no object
|
2026-09-25 21:05:02 +07:00 |
|
|
|
f76d0d6e9f
|
An if's arms and a _ function's exits meet at one join in any order, a return inside the last form counts where it is written, and a constant computed by a _ function is refused as with a written type
|
2026-09-25 21:02:26 +07:00 |
|
|
|
095701b29b
|
A negated name counts as the name an arm's pattern binds, and a comment belongs to the form or block whose column it sits at
|
2026-09-25 21:02:19 +07:00 |
|
|
|
fcd32c21c5
|
A match arm can be a number, char or string literal
|
2026-09-25 21:01:40 +07:00 |
|
|
|
76b2ab3113
|
A duplicate literal arm is one whose value equals an earlier arm's at the scrutinee's type, and a literal no dyn holds is refused with a pattern fix
|
2026-09-25 21:01:15 +07:00 |
|
|
|
9e09375d7b
|
Merge branch 'master' into worktree-agent-a6088ba602da36c5e
# Conflicts:
# TODO.org
|
2026-09-25 20:58:42 +07:00 |
|