ludic.clock: clock_hhmm reads a table of the day's times made with the state; ludic.minimap: minimap_pin past the end is one kept empty mark; ludic.ui: ev_text's memo miss is its own declared function

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-28 17:57:30 +03:00
parent bad7c4a255
commit ac8c7b0c0b
5 changed files with 25 additions and 7 deletions

View file

@ -22,6 +22,11 @@ function ev_text(ui_st: mut UiState, x: UiExpr, e: UiEnv) -> Val {
if m.tags[i] == MM_TEXT and tx_same(ps, m.keys[i]) { return m.vals[i] }
at = (at + 1) & (MM_CAP - 1)
}
return ev_text_new(ui_st, m, ps)
}
# a text read this way for the first time: joined, and kept in the memo with its Value
@alloc_ok("a memo miss: once per distinct text, bounded by MM_CAP")
function ev_text_new(ui_st: mut UiState, m: UiMemo, ps: []string) -> Val {
var out = ""
for p in 0 .. len(ps) { out = out + ps[p] }
let j = mm_add(m, MM_TEXT, out)