Eremey Valetov
eb32021c19
Implement string space pool with compacting garbage collector
...
Replaces individual malloc/free string management with a contiguous pool
(default 32KB) and compacting GC, matching the original GW-BASIC's
GETSPA/GARBAG architecture. Allocation is a bump pointer; gw_str_free()
is a no-op (descriptors are nulled, data reclaimed by GC). Compaction
runs at statement boundaries when the pool drops below 4KB free, walking
the variable table and array storage to relocate live strings.
FRE() now returns actual free pool space. FRE("") triggers a GC pass
before reporting. CLEAR n sets the string space size.
2026-03-29 04:55:48 -04:00
..
2026-03-01 12:25:47 -05:00
2026-03-01 13:37:05 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-21 02:48:17 -04:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 13:07:28 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-21 01:38:53 -04:00
2026-03-10 22:20:58 -04:00
2026-03-01 12:25:47 -05:00
2026-03-28 18:48:38 -04:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 13:37:05 -05:00
2026-03-01 13:07:28 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-28 18:27:19 -04:00
2026-03-01 12:25:47 -05:00
2026-03-01 13:07:28 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-28 18:27:19 -04:00
2026-03-01 12:25:47 -05:00
2026-03-29 04:55:48 -04:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00
2026-03-10 22:38:42 -04:00
2026-03-01 12:25:47 -05:00
2026-03-01 12:25:47 -05:00