From 4022b60901107501e42470dccddd656f5fa39a91 Mon Sep 17 00:00:00 2001 From: giles Date: Fri, 1 May 2026 21:41:38 +0000 Subject: [PATCH] =?UTF-8?q?plan:=20tick=20Phase=2022=20Haskell=20=E2=80=94?= =?UTF-8?q?=20runtime.sx=20done,=20148/148=20tests?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plans/agent-briefings/primitives-loop.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plans/agent-briefings/primitives-loop.md b/plans/agent-briefings/primitives-loop.md index 8564af70..6a8a1f14 100644 --- a/plans/agent-briefings/primitives-loop.md +++ b/plans/agent-briefings/primitives-loop.md @@ -685,9 +685,10 @@ Brief each language's loop agent (or do inline) after rebasing their branch onto multi-return; sets for Erlang sets; `remainder` for `rem`; regexp for `re` module. lib/erlang/runtime.sx (63 forms) + test.sh (55/55 pass). 3c0a9632. -- [ ] Haskell: numeric tower for `Num`/`Integral`/`Fractional`; promises for lazy evaluation +- [x] Haskell: numeric tower for `Num`/`Integral`/`Fractional`; promises for lazy evaluation (critical); multiple values for tuples; rational numbers for `Rational`; char type for `Char`; `gcd`/`lcm`; sets for `Data.Set`; `read`/`write` for `Show`/`Read` instances. + lib/haskell/runtime.sx (113 forms) + tests/runtime.sx (143/143 pass). c02ffcf3. - [ ] JS: vectors for Array; hash tables for `Map`; sets for `Set`; bitwise ops for typed arrays; regexp for JS regex; bytevectors for `Uint8Array`; radix formatting. @@ -723,6 +724,7 @@ Brief each language's loop agent (or do inline) after rebasing their branch onto _Newest first._ +- 2026-05-01: Phase 22 Haskell done — runtime.sx (113 forms): numeric tower (hk-div floor semantics), rational (dict GCD-normalised), hk-force (promises), Data.Char, Data.Set, Data.List, Maybe/Either, tuples, string helpers, hk-show. 148/148 tests. c02ffcf3. - 2026-05-01: Phase 22 Erlang done — runtime.sx (63 forms): numeric tower, bitwise (band/bor/bxor/bnot/bsl/bsr), sets, re module, list BIFs, type conversions, ok/error tuples. 55/55 tests. 3c0a9632. - 2026-05-01: Phase 22 Lua done — math/string/table stdlib tables + lua-force in lib/lua/runtime.sx. 185/185 tests (28 new). ec3512d6. - 2026-05-01: Phase 22 CL done — runtime.sx (103 forms): type preds, arithmetic, chars, format, gensym, values, sets, radix, list utils. cl-empty? guards nil/() split. 68/68 tests. 1ad8e74a.