haskell: Phase 14 — tests/records.sx (14/14, plan ≥12)
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 49s
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 49s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -261,9 +261,9 @@ No OCaml changes are needed. The view type is fully representable as an SX dict.
|
||||
not `hk-constructors`._
|
||||
- [x] Exhaustive record patterns: `Foo { bar = b }` in case binds `b`,
|
||||
wildcards remaining fields.
|
||||
- [ ] Tests in `lib/haskell/tests/records.sx` (≥ 12 tests: creation, accessor,
|
||||
update one field, update two fields, record pattern, `deriving Show` on
|
||||
record type).
|
||||
- [x] Tests in `lib/haskell/tests/records.sx` (14/14, plan ≥12: creation
|
||||
with reorder, accessors, single + two-field update, case-alt + fun-LHS
|
||||
record patterns, `deriving Show` on record types).
|
||||
- [ ] Conformance programs:
|
||||
- `person.hs` — `data Person = Person { name :: String, age :: Int }` with
|
||||
accessors, update, `deriving Show`.
|
||||
@@ -315,6 +315,12 @@ No OCaml changes are needed. The view type is fully representable as an SX dict.
|
||||
|
||||
_Newest first._
|
||||
|
||||
**2026-05-07** — Phase 14 unit tests `tests/records.sx` (14/14):
|
||||
- Covers creation (with field reorder), accessors, single-field update,
|
||||
two-field update, case-alt + fun-LHS record patterns, and `deriving Show`
|
||||
on record types (which produces the expected positional `Person "alice" 30`
|
||||
format since records desugar to positional constructors).
|
||||
|
||||
**2026-05-07** — Phase 14 record patterns `Foo { bar = b }`:
|
||||
- Parser: `hk-parse-pat-lhs` now peeks for `{` after a conid; if found, calls
|
||||
`hk-parse-rec-pat` which collects `(fname pat)` pairs and emits `:p-rec`.
|
||||
|
||||
Reference in New Issue
Block a user