plans: tick standard classes + progress log
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 42s

This commit is contained in:
2026-05-06 10:57:41 +00:00
parent d3e71ba356
commit 6c1a953c80

View File

@@ -101,7 +101,7 @@ Key mappings:
### Phase 5 — typeclasses (dictionary passing)
- [x] `class` / `instance` declarations
- [x] Dictionary-passing elaborator: inserts dict args at call sites
- [ ] Standard classes: `Eq`, `Ord`, `Show`, `Num`, `Functor`, `Monad`, `Applicative`
- [x] Standard classes: `Eq`, `Ord`, `Show`, `Num`, `Functor`, `Monad`, `Applicative`
- [ ] `deriving (Eq, Show)` for ADTs
### Phase 6 — real IO + Prelude completion
@@ -114,6 +114,18 @@ Key mappings:
_Newest first._
- **2026-05-06** — Phase 5 standard classes. Prelude extended: `foldr`, `foldl`,
`foldl1`, `foldr1`, `zip`, `reverse`, `elem`, `notElem`, `any`, `all`, `and`,
`or`, `sum`, `product`, `maximum`, `minimum`, `compare`, `min`, `max`,
`signum`, `fromIntegral`, `null`, `flip`, `const`, `curry`, `uncurry`,
`lookup`, `maybe`, `either`, `fmap`, `pure`, `when`, `unless`, `mapM_`,
`sequence_`. `show` implemented as SX builtin (`hk-show-val`) dispatching on
runtime type (number, string, bool, list, tuple, ADT). `hk-eval-program` now
uses `hk-dict-copy hk-env0` instead of fresh `hk-init-env` — prelude parsed
once at load time, each program gets a shallow copy (10× speedup per call).
test.sh timeout 240s→360s for nqueens headroom. 48 new stdlib tests.
554/554 green.
- **2026-05-06** — Phase 5 dict-passing elaborator. `hk-bind-decls!` class-decl
arm now wraps dispatch functions as `hk-mk-lazy-builtin` (arity 1) so
`hk-apply` can call them; instance methods called via `hk-apply` not native SX