|
|
2ace3bfe2b
|
(char n) on a u64 past 2^63 traps naming the u64 it was given.
|
2026-09-26 14:30:17 +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 |
|
|
|
c24b19e7b1
|
Merge master into the dyn char lane
|
2026-09-26 13:09:28 +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 |
|
|
|
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 |
|
|
|
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 |
|
|
|
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 |
|
|
|
d5437c3f22
|
A non-ASCII char literal is refused where a byte is wanted, a dyn int or char goes into an i32 range-checked, a cast on a dyn char gives its code point, and C1 controls print as \uXXXX.
|
2026-09-26 12:15:04 +07:00 |
|
|
|
78e25dfa48
|
A str from dyn text is pinned once per temp stamp and is a poisoned temp copy in a dev build, a float past f32's range and a map key a struct lacks trap, and a struct's refusal names what the value is.
|
2026-09-26 12:09:25 +07:00 |
|
|
|
5cc661d6ab
|
Merge branch 'master' into worktree-agent-a26dff0627201f77b
|
2026-09-26 12:07:11 +07:00 |
|
|
|
db67ab19b4
|
String is owned, growable, always-valid UTF-8 text over a (Vec u8), and the prelude's text builders return it.
|
2026-09-26 12:07:11 +07:00 |
|
|
|
66ea0b3abe
|
Merge branch 'master' into worktree-agent-ab88d16e8e6fbfe15
|
2026-09-26 12:05:38 +07:00 |
|
|
|
0ed3ce93e2
|
Every char prints as a spelling that reads back as it, with a name or Clojure's \uXXXX for each control character.
|
2026-09-26 11:54:03 +07:00 |
|
|
|
6d8ced2ba3
|
A dyn text becomes a str as its own bytes, a dyn view becomes its own storage, and a dyn vec or map becomes a checked copy in a [const T], a fixed array or a struct, while a writable [T] is never a copy.
|
2026-09-26 11:48:01 +07:00 |
|
|
|
c7fb0e5422
|
Literal locals fed through do, let and if arms share one type without extra rounds, a chain past the rounds names the local to annotate, a restart's conversion fix shows the argument as written, and a name's lookup is answered from the last one under the same scope
|
2026-09-26 11:14:15 +07:00 |
|
|
|
1d09f2fd3d
|
Merge master into the dyn char lane
|
2026-09-26 11:11:42 +07:00 |
|
|
|
71f2b0b9b6
|
Dyn has a char that prints as its literal, dyn text counts characters, and chars and text convert between a text and a vec of chars.
|
2026-09-26 11:11:42 +07:00 |
|
|
|
c4452fc500
|
Merge master into the bit operators lane
|
2026-09-26 11:04:32 +07:00 |
|
|
|
75fe42d310
|
A dev build's views are checked in constant time per lookup, the dev registry grows instead of dropping notes, and a release crossing into dyn carries no dev record.
|
2026-09-26 10:57:35 +07:00 |
|
|
|
a546bde112
|
Merge master
|
2026-09-26 10:56:30 +07:00 |
|
|
|
4188c47b76
|
A dev build's self-equality scan starts by bumping a stamp rather than clearing its table, so one large scan leaves later ones as cheap as their own size.
|
2026-09-26 10:52:59 +07:00 |
|
|
|
473bf0a2b7
|
The bit operators are && || ^^ ~~ in .fln at Python's precedence, take integers only on typed and dyn values, and popcount, leading-zeros, trailing-zeros and the rotations exist on both backends.
|
2026-09-26 10:49:54 +07:00 |
|
|
|
23663c4773
|
An unconstrained float literal is an f64, literal locals settle by merging the locals that feed each other, and a restart refused for a number type writes the conversion
|
2026-09-26 10:45:46 +07:00 |
|
|
|
9644b8a616
|
A dev build's self-equality scan walks each container once, a free finds its block by the keyed probe, a registry listing waits out a growth, and a view's crossing and scalar read take fewer instructions.
|
2026-09-26 10:41:12 +07:00 |
|
|
|
fc463cf320
|
The .fln reader refuses loop and recur, flan convert refuses a .flan file that uses them, and every loop outside recur.flan is a while or until.
|
2026-09-26 10:31:53 +07:00 |
|
|
|
0a05d83b3b
|
A release build's dyn view carries no dev record, the dev registry grows instead of dropping notes, a container compared with itself still traps on a stale view inside it, has-key? traps at its site, and a trap clears the walk site it leaves.
|
2026-09-26 10:13:01 +07:00 |
|
|
|
207f5d7bad
|
Merge master
|
2026-09-26 09:59:00 +07:00 |
|
|
|
497c9f470f
|
A dyn view's record is collected with it, a dev build ties a view of a stack address to its owning frame and finds a heap block through an address index, and a view's traps name the field, the operation and the site.
|
2026-09-26 09:54:45 +07:00 |
|
|
|
5f1b9b9e7e
|
An unconstrained float literal is an f32, and an integer literal meeting a float literal meets it at the float
|
2026-09-26 09:49:51 +07:00 |
|
|
|
7991e00e76
|
A struct's dyn view takes .field and [:k], read and assigned, and a get on it traps at its own site.
|
2026-09-26 09:32:49 +07:00 |
|
|
|
697c016231
|
Merge master
|
2026-09-26 09:29:40 +07:00 |
|
|
|
d519ca81dd
|
Merge master into the views lane
|
2026-09-26 09:29:15 +07:00 |
|
|
|
749b4aeb84
|
A float element of a dyn view takes an int it holds exactly and traps on one it does not.
|
2026-09-26 06:22:26 +07:00 |
|
|
|
5177586848
|
A number or character literal bound by let or loop takes its type from its uses in the function
|
2026-09-26 06:22:25 +07:00 |
|
|
|
f39612bc7c
|
Code a request sends without :syntax is read in its file's syntax, or the program's when it names none, and a dotted dyn name points to its accessor.
|
2026-09-26 06:21:07 +07:00 |
|
|
|
7953376e4e
|
Any typed container of numbers, bools, str, structs, arrays, slices or Vecs crosses into dyn as a view from any storage, and a dev build traps on a view whose frame returned or whose block was released.
|
2026-09-26 06:10:11 +07:00 |
|
|
|
4eefd25df9
|
A class instance refuses a key its class does not declare, read or written, through get, put, .field and [:key].
|
2026-09-26 06:02:51 +07:00 |
|
|
|
1022b7c7f9
|
Merge branch 'master' into worktree-agent-af3c12884ed5f2255
|
2026-09-26 05:54:17 +07:00 |
|
|
|
605eb97e75
|
A dyn value's .field and [:key] read as get and assign as put.
|
2026-09-26 05:52:56 +07:00 |
|
|
|
267db2cd91
|
The typed read-only text type is spelled str, and string is refused with that fix.
|
2026-09-26 05:22:24 +07:00 |
|
|
|
40eb57a5b6
|
A dyn opened in any value position of an operand or an arm makes it meet as a dyn, found by the one walk of value positions the frame-escape check also uses
|
2026-09-26 00:09:42 +07:00 |
|
|
|
263214e639
|
A dyn opened by an expectation is marked where it is opened, so a bool or an Option beside a dyn stays a dyn, and an operand refused at a type is not asked again, so nested sums and matches check in linear time
|
2026-09-25 23:43:14 +07:00 |
|
|
|
2135f6d37f
|
Merge branch 'master' into worktree-agent-a46233a32d1912c78
|
2026-09-25 23:27:55 +07:00 |
|