From a5c41d2573dbab022563042157afe4b07d96e7c4 Mon Sep 17 00:00:00 2001 From: giles Date: Thu, 7 May 2026 08:28:57 +0000 Subject: [PATCH] plans: tick Phase 10 numerics test file (37/37, plural filename) Co-Authored-By: Claude Sonnet 4.6 --- plans/haskell-completeness.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/plans/haskell-completeness.md b/plans/haskell-completeness.md index c91e68e0..9ef39832 100644 --- a/plans/haskell-completeness.md +++ b/plans/haskell-completeness.md @@ -167,9 +167,10 @@ No OCaml changes are needed. The view type is fully representable as an SX dict. builtins in the post-prelude block._ - [x] `Floating` typeclass stub: `pi`, `exp`, `log`, `sin`, `cos`, `(**)` (power operator, maps to SX exponentiation). -- [ ] Tests in `lib/haskell/tests/numeric.sx` (≥ 15 tests: fromIntegral - identity, sqrt/floor/ceiling/round on known values, Float literal show, - division, pi, `2 ** 10 = 1024.0`). +- [x] Tests in `lib/haskell/tests/numerics.sx` (37/37 — well past the ≥15 + target; covers fromIntegral identity, sqrt/floor/ceiling/round/truncate, + Float literal show, division/recip/fromRational, pi/exp/log/sin/cos, + `2 ** 10 = 1024`. Filename is plural — divergence noted in the plan.) - [ ] Conformance programs: - `statistics.hs` — mean, variance, std-dev on a `[Double]`. Exercises `fromIntegral`, `sqrt`, `/`. @@ -303,6 +304,12 @@ No OCaml changes are needed. The view type is fully representable as an SX dict. _Newest first._ +**2026-05-07** — Phase 10 numerics test file checkbox (filename divergence): +- Plan called for `lib/haskell/tests/numeric.sx`. From the very first Phase 10 + iteration I created `numerics.sx` (plural) and have been growing it. Now + at 37/37 — already covers all the categories the plan listed, well past the + ≥15 minimum. Ticked the box; left a note about the filename divergence. + **2026-05-07** — Phase 10 Floating stub (pi, exp, log, sin, cos, **): - pi as a number constant; exp/log/sin/cos as builtins thunking through to SX primitives. `(**)` added as a binop case in `hk-binop` mapping to SX `pow`.