@max on the bounded lists: TextRing's slots, the pack's counts and change ring, the net's fact ring, the compass pools, ludic.ui's memo (its 3/4 of MM_CAP), screen pools, answer and pointer rings; ludic.base's intern test holds the table to its cap now that past it is Mem.over

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-28 16:48:53 +03:00
parent 54c0feafc2
commit 7d85ea3432
8 changed files with 23 additions and 23 deletions

View file

@ -55,8 +55,8 @@ export function compass_gather(compass_st: mut CompassState) -> void {
export function compass_capturing(compass_st: CompassState) -> bool { return compass_st.cmp_capturing }
# more marks than any frame has asked for (the tracking view's peak is well under it)
const COMPASS_POOL: int = 512
# marks made at the start; a frame that takes more grows the pool (declared), up to its @max
const COMPASS_POOL: int = 512 # made at start; @max(2048) on the pools is the most a frame may take
function cmp_pool__new() -> []CompassMark {
let xs = new []CompassMark
for i in 0 .. COMPASS_POOL { push(xs, new CompassMark) }

View file

@ -26,11 +26,11 @@ export state CompassState {
cmp_cap: int = 64
cmp_list: []CompassMark = new []CompassMark # this frame's, sorted and culled
cmp_back: []CompassMark = new []CompassMark # the list the sort fills, then swapped with cmp_list
cmp_pool: []CompassMark = cmp_pool__new() # a frame's marks, made with the state and reused: Ludic frees nothing
@max(2048) cmp_pool: []CompassMark = cmp_pool__new() # a frame's marks, made with the state and reused: Ludic frees nothing
cmp_used: int = 0
cmp_capturing: bool = false
cmp_caught: []CompassMark = new []CompassMark # what providers said while someone was listening
cmp_cpool: []CompassMark = cmp_pool__new() # the capture's marks, reused from one capture to the next
@max(2048) cmp_cpool: []CompassMark = cmp_pool__new() # the capture's marks, reused from one capture to the next
cmp_none: CompassMark = new CompassMark # what compass_at answers past the end
cmp_cused: int = 0
cmp_ranges: []float = null