|
|
5274f83f88
|
One fn form holds all of a name's arities, and evaluating it replaces them all.
|
2026-09-26 18:30:11 +07:00 |
|
|
|
1215db7d26
|
Merge master into the arity lane.
|
2026-09-26 18:29:54 +07:00 |
|
|
|
c3f1adb0c3
|
TODO.org queues decision 141: a dyn vector is a value, copied on first write.
|
2026-09-26 18:25:08 +07:00 |
|
|
|
5a8e7fa87b
|
TODO.org records that eval-in-frame can assign loop indices and pattern bindings.
|
2026-09-26 18:21:09 +07:00 |
|
|
|
8d198f88c9
|
A condition can bind what it tests with as, inside and chains too, and the bound name is read-only in the program and in the debugger.
|
2026-09-26 18:21:00 +07:00 |
|
|
|
fd6510e0b5
|
Merge branch 'master' into worktree-agent-afbb9bcfd4d47bb1b
# Conflicts:
# lib/check.ml
|
2026-09-26 18:06:56 +07:00 |
|
|
|
b814aca187
|
A kept when or else-less chain over an Option arm is that Option, flattened one level, unless an Option of it is wanted.
|
2026-09-26 18:02:43 +07:00 |
|
|
|
e4d0e9c60e
|
A pause mark on any column of a condition keeps what it binds, an as in parentheses gets its own refusal, and what an as finds is held in one slot.
|
2026-09-26 17:52:06 +07:00 |
|
|
|
c4547adb25
|
Master merges into the as-chain lane.
|
2026-09-26 17:42:08 +07:00 |
|
|
|
dd719766ee
|
A fn's arities are one form, fn f with a (params) -> R line per arity, and evaluating it replaces every arity at once.
|
2026-09-26 17:35:18 +07:00 |
|
|
|
3afb7e13af
|
Master merges into the as-chain lane, and as names what a pipe answers.
|
2026-09-26 17:22:07 +07:00 |
|
|
|
8f46a43e7a
|
Merge branch 'master' into worktree-agent-afbb9bcfd4d47bb1b
|
2026-09-26 17:21:11 +07:00 |
|
|
|
70be2a57e6
|
Master is merged into the dyn crossing lane again.
|
2026-09-26 17:18:36 +07:00 |
|
|
|
3f59c18257
|
Merge master into the arity versions lane.
|
2026-09-26 17:18:24 +07:00 |
|
|
|
2af5dee0d0
|
The prelude is written in .fln and read once per process.
|
2026-09-26 17:18:15 +07:00 |
|
|
|
cb60df1dc0
|
A T is wrapped in Some wherever a T? is wanted, one level at a time and never unwrapped back.
|
2026-09-26 17:11:12 +07:00 |
|
|
|
29494c7978
|
Merge master into the arity versions lane.
|
2026-09-26 17:08:19 +07:00 |
|
|
|
179156b105
|
A function name has one version per arity, and a call picks the version by its number of arguments.
|
2026-09-26 17:08:15 +07:00 |
|
|
|
0598949fcb
|
Master merges into the as-chain lane.
|
2026-09-26 17:07:04 +07:00 |
|
|
|
c1916ed819
|
e as g is any test of a condition's and chain, binding g for the rest of the chain and the block.
|
2026-09-26 17:07:01 +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 |
|
|
|
1763157ef2
|
Forms .fln cannot yet write are recorded.
|
2026-09-26 16:40:59 +07:00 |
|
|
|
d8a70fea04
|
Merge master into the prelude .fln lane.
|
2026-09-26 16:37:09 +07:00 |
|
|
|
66fce31dbd
|
The prelude is lib/prelude.fln, embedded at build time and read by the indented reader.
|
2026-09-26 16:37:02 +07:00 |
|
|
|
15ff547e52
|
rand-int stays u64.
|
2026-09-26 16:29:38 +07:00 |
|
|
|
3a2f3327f6
|
Three dyn-crossing gaps found beside the fold fix are recorded.
|
2026-09-26 16:28:15 +07:00 |
|
|
|
181f7da037
|
Merge master into the dyn fold lane.
# Conflicts:
# lib/check.ml
|
2026-09-26 16:16:25 +07:00 |
|
|
|
bd08d6524c
|
Merge master into the .fln optionals lane.
|
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 |
|
|
|
2243b55259
|
Intermittent dev-session tests wait until the features land.
|
2026-09-26 15:53:50 +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 |
|
|
|
e3f431ea79
|
A literal's reading is fixed where it is bound, and a dyn past the second operand of + is recorded as converted wrongly.
|
2026-09-26 15:31:58 +07:00 |
|
|
|
33203bd3c5
|
Merge master into the typed char lane
# Conflicts:
# TODO.org
# lib/check.ml
|
2026-09-26 15:04:23 +07:00 |
|
|
|
c9f33feb6c
|
Merge master into the .fln optionals lane.
|
2026-09-26 14:55:03 +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 |
|
|
|
ce19ee615c
|
Performance work waits while design comes first.
|
2026-09-26 14:43:28 +07:00 |
|
|
|
398bd7b851
|
.fln is queued to become the only source language, with Swift optionals and no ? or ! in names.
|
2026-09-26 14:03:10 +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 |
|
|
|
ce0068c0f7
|
A cheap front for dyn sequences waits on a program that needs it.
|
2026-09-26 13:53:24 +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 |
|
|
|
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 |
|
|
|
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 |
|