|
|
70be2a57e6
|
Master is merged into the dyn crossing lane again.
|
2026-09-26 17:18:36 +07:00 |
|
|
|
4d85cefbe2
|
A bare nil in a typed fold is refused in every position while a dyn holding nil traps, a fold operand asked on its own terms records no literal-local use, and a wide literal at dyn says it has no dyn value.
|
2026-09-26 17:18:29 +07:00 |
|
|
|
0c7a53f526
|
A pipe into a language word is refused, and a pipe the next operator or an as swallows is refused with the bracketed form as the fix.
|
2026-09-26 17:11:15 +07:00 |
|
|
|
5a3d480edf
|
In .fln, x |> f(a) reads as f(x, a), below or, with the Emacs mode indenting and marking pipe lines.
|
2026-09-26 16:58:53 +07:00 |
|
|
|
f484f16190
|
Master is merged into the dyn crossing lane.
|
2026-09-26 16:48:32 +07:00 |
|
|
|
7dcef05df3
|
A u64 past the largest i64 traps where it crosses into dyn, a dyn nil past a fold's first pair traps at run time, and an is-numeric $t boxes beside a dyn.
|
2026-09-26 16:47:28 +07:00 |
|
|
|
edd2955383
|
The hand-written corpus holds the author's substring-search and sort practice file.
|
2026-09-26 16:37:18 +07:00 |
|
|
|
b49c6ad9cd
|
The hand-written corpus gets the author's substring-search and sort practice file, updated to current .fln syntax with a main that runs and prints each function.
|
2026-09-26 16:36:35 +07:00 |
|
|
|
181f7da037
|
Merge master into the dyn fold lane.
# Conflicts:
# lib/check.ml
|
2026-09-26 16:16:25 +07:00 |
|
|
|
97e89c8d40
|
min and max take a dyn in any position, picking numbers by value and chars by code point in the dyn runtime and trapping at the form on anything else.
|
2026-09-26 16:15:52 +07:00 |
|
|
|
adfab2d482
|
A narrowed name keeps its assignability, a local whose address is taken or that a fn assigns is not narrowed, a trailing ? tests a whole chain, and the optional refusals name the test to write.
|
2026-09-26 16:08:16 +07:00 |
|
|
|
d138155eae
|
A dyn operand anywhere in an arithmetic, bitwise or comparison fold makes the fold dyn from there on, and min or max refuses one past its first pair as it does in it.
|
2026-09-26 16:08:08 +07:00 |
|
|
|
8afa054349
|
Merge master into the .fln optionals lane.
|
2026-09-26 15:52:00 +07:00 |
|
|
|
d252eee2b2
|
In .fln x? tests that a value is present and narrows a local Option to its payload in the block it guards, and e? as g names what a test found.
|
2026-09-26 15:48:36 +07:00 |
|
|
|
6c6b5a60cb
|
?? continues a line, a chain or an unwrap is no place to assign, nested marks and a ? on a value say what to write, a lowercase type takes ?, and a predicate reads as a word with its name beside it.
|
2026-09-26 15:36:49 +07:00 |
|
|
|
570d2d88fb
|
A char plus or minus an integer is checked for overflow, so a trap names the true sum or the side of the range it left.
|
2026-09-26 15:27:07 +07:00 |
|
|
|
7361830938
|
A char minus a char takes the integer width its site wants, a chain of + or - folds left step by step, and a char plus a u64 is checked unsigned.
|
2026-09-26 15:23:34 +07:00 |
|
|
|
33203bd3c5
|
Merge master into the typed char lane
# Conflicts:
# TODO.org
# lib/check.ml
|
2026-09-26 15:04:23 +07:00 |
|
|
|
37c4f2ee10
|
A char plus or minus an integer is a char checked to be a scalar value, a char minus a char is their distance, and dyn chars do the same.
|
2026-09-26 14:55:00 +07:00 |
|
|
|
178c129c97
|
A .fln name carries no ? or !, and .fln has T?, x ?? d, x!, if let over a plain name and a?.b chaining.
|
2026-09-26 14:54:58 +07:00 |
|
|
|
7db1a81d1f
|
Builtins, prelude, vendor and raylib predicates are named with is- or has- and no name carries a ? or !.
|
2026-09-26 14:34:36 +07:00 |
|
|
|
2ace3bfe2b
|
(char n) on a u64 past 2^63 traps naming the u64 it was given.
|
2026-09-26 14:30:17 +07:00 |
|
|
|
ed5b56f212
|
A daemon under a test harness ends within a second or two of the harness going even while a client holds its connection.
|
2026-09-26 14:05:29 +07:00 |
|
|
|
3134246511
|
Merge branch 'master' into worktree-agent-a5e429a5bd331edd4
|
2026-09-26 14:00:12 +07:00 |
|
|
|
92fbeb4fc9
|
println prints a char as the character itself, and a char inside a value, in the inspector or at the REPL prints as its literal.
|
2026-09-26 13:59:32 +07:00 |
|
|
|
fd8620516c
|
A char literal is a typed char unless typed code wants a number, and a char compares, hashes, converts with (i32 c) and a checked (char n), and crosses into dyn as a dyn char.
|
2026-09-26 13:49:02 +07:00 |
|
|
|
38078cada3
|
A kept if-let chain takes its type from what its arm answered, so an arm that returns stays Never and one with no value makes the chain a statement.
|
2026-09-26 13:47:24 +07:00 |
|
|
|
5038c5954a
|
get on a String is refused as at is, a dyn get's trap names get, a kept else-less form beside a number is blamed at itself in arithmetic and comparisons, and a kept if-let chain with no final else gives an Option.
|
2026-09-26 13:40:16 +07:00 |
|
|
|
b545584de8
|
Master is merged into the when, get and if let lane, and dyn get over text counts characters through at's own body.
|
2026-09-26 13:17:57 +07:00 |
|
|
|
aa6a007c7e
|
Merge branch 'master' into worktree-agent-a5e429a5bd331edd4
|
2026-09-26 13:16:24 +07:00 |
|
|
|
2752d57655
|
A dev daemon started by a test dies with it, a daemon whose socket is gone ends cleanly, the Emacs daemon buffer asks before it is killed and closes the session, and a program's agent socket lives under TMPDIR and goes on a trap or fatal signal.
|
2026-09-26 13:13:39 +07:00 |
|
|
|
c24b19e7b1
|
Merge master into the dyn char lane
|
2026-09-26 13:09:28 +07:00 |
|
|
|
1b588df6b5
|
Master is merged into the when, get and if let lane after the review fixes.
|
2026-09-26 13:09:24 +07:00 |
|
|
|
79430aca77
|
A lambda's last form is checked at the return its position wants, a call's arguments and a kept cond with no else keep a when as an Option, a when used as an arithmetic operand is blamed itself, elif let reads and prints as a nested if-let, and dyn get over text or a vec runs at's own runtime body.
|
2026-09-26 13:09:21 +07:00 |
|
|
|
764c2d10af
|
String is owned, growable, always-valid UTF-8 text, and the prelude's text builders return it.
|
2026-09-26 13:05:56 +07:00 |
|
|
|
1243504ac6
|
.fln has let groups, grid[r c] indices and a not prefix, and a binding lines up under the let's first name.
|
2026-09-26 13:01:34 +07:00 |
|
|
|
d980251632
|
A text's ASCII check is its char count against its length, so pinning a text never changes how it counts, and a char writes through a dyn view where its code point fits.
|
2026-09-26 13:01:33 +07:00 |
|
|
|
4a7df449aa
|
bytes->string copies the Vec's bytes into a new String, a String's character walk stops at its position and never reads past its length, and a builder's block is a String in the leak report.
|
2026-09-26 13:00:13 +07:00 |
|
|
|
e5fd44920e
|
Merge branch 'master' into worktree-agent-a26dff0627201f77b
|
2026-09-26 12:55:06 +07:00 |
|
|
|
5d41a2d424
|
A dyn vec or map moved into typed storage takes a char where its code point fits, and a whole float in a trap's sentence reads as 2.0.
|
2026-09-26 12:54:08 +07:00 |
|
|
|
a3899f3ecb
|
Master is merged into the when, get and if let lane for the review fixes.
|
2026-09-26 12:53:34 +07:00 |
|
|
|
f35a2b240a
|
Merge master into the dyn char lane
|
2026-09-26 12:51:41 +07:00 |
|
|
|
28d4c0f8dc
|
A number literal takes its type from its uses inside the function, an unconstrained float literal is an f64, and a dyn use asks for the dyn width.
|
2026-09-26 12:41:54 +07:00 |
|
|
|
d415d5da15
|
.fln comparison chains may mix operators pointing one way, such as 0 <= r < rows, and evaluate every operand once in order.
|
2026-09-26 12:35:30 +07:00 |
|
|
|
659f4d8c6c
|
Merge branch 'master' into worktree-agent-a26dff0627201f77b
|
2026-09-26 12:29:59 +07:00 |
|
|
|
ef87bdb3b3
|
A prelude text builder checks its own String as a backstop, and a direct call checks the text it passes first, at the caller's line.
|
2026-09-26 12:29:59 +07:00 |
|
|
|
9c47d3bacc
|
A dyn goes into every integer width range-checked, a char where its code point fits, and the trap names the width and what it found.
|
2026-09-26 12:27:40 +07:00 |
|
|
|
36655025c0
|
Master is merged into the when, get and if let lane again.
|
2026-09-26 12:23:17 +07:00 |
|
|
|
bfdd971baa
|
A String compares equal to a String or a str by its bytes, and a prelude builder's String is checked at the caller's line.
|
2026-09-26 12:22:17 +07:00 |
|
|
|
b1cba196b9
|
A .fln comparison chain may mix < with <=, or > with >=, reading as the and of its tests with every operand evaluated once, left to right, as a < b < c is, and the printers write that and back as the chain.
|
2026-09-26 12:19:03 +07:00 |
|