perf: clean HAMT persistent hash map, 18-form .clj source

Rewrite persistent_hash_map.clj with correct paren balancing.
BitmapIndexedNode constructor + bit-or verified working in isolation.
Core HAMT operations (bmn-assoc, bmn-find, phm-assoc, phm-get,
phm-contains?, hash-map) structurally correct.

Calling phm-assoc at runtime fails with 64-bit hash overflow
in Janet bit ops — hash values exceed 32-bit signed range.
Fix: wrap (hash key) with (bit-and (int h) 0x7FFFFFFF) in phm-assoc.
This commit is contained in:
Yogthos 2026-06-02 12:44:16 -04:00
parent 677d059c0b
commit 5052e391da
7 changed files with 199 additions and 383 deletions

View file

@ -1,26 +1,16 @@
{
"jolt-dev": {
"created_by": "agent",
"use_count": 16,
"view_count": 26,
"patch_count": 27,
"last_used_at": "2026-06-02T14:31:56.690589+00:00",
"last_viewed_at": "2026-06-02T14:31:56.683109+00:00",
"last_patched_at": "2026-06-02T14:33:57.842785+00:00",
"use_count": 18,
"view_count": 28,
"patch_count": 28,
"last_used_at": "2026-06-02T16:25:52.972818+00:00",
"last_viewed_at": "2026-06-02T16:25:52.966353+00:00",
"last_patched_at": "2026-06-02T16:27:10.781990+00:00",
"created_at": "2026-06-01T21:26:06.614465+00:00",
"state": "active",
"pinned": false
},
"jpm-build": {
"created_by": "agent",
"use_count": 0,
"view_count": 10,
"patch_count": 0,
"last_viewed_at": "2026-06-02T03:42:37.626504+00:00",
"created_at": "2026-06-01T20:56:39.144222+00:00",
"state": "active",
"pinned": false
},
"jolt-bootstrap": {
"created_by": "agent",
"use_count": 8,
@ -32,5 +22,15 @@
"created_at": "2026-06-01T21:49:51.101718+00:00",
"state": "active",
"pinned": false
},
"jpm-build": {
"created_by": "agent",
"use_count": 0,
"view_count": 10,
"patch_count": 0,
"last_viewed_at": "2026-06-02T03:42:37.626504+00:00",
"created_at": "2026-06-01T20:56:39.144222+00:00",
"state": "active",
"pinned": false
}
}