Skip to content

ESC-03: no stdlib Map/Dict type — Dict.t port target (Refs 229, 160/162) #247

Description

@hyperpolymath

Problem

ReScript Dict.t<v> (string-keyed map) has no stdlib target:
stdlib/collections.affine is list operations only; there is no Map/Dict
type. stdlib/Http.affine:16 already flags this gap (Dict<String,String>,
tied to #160/#162). 6 estate .affine files carry Dict.t (post-#228
re-audit; docs/RESCRIPT-ELIMINATION.adoc Tier-3 ESC-03).

Escalated language-side (bidirectional-evidence discipline, as #228).

Ask

A canonical stdlib Map/Dict type with the minimal surface #229 needs
(make/get/set/fromArray/iteration). Coordinate with #160/#162 — the
Http.affine Dict gap and this are the same need.

Context

Activity

  1. added 4 commits that reference this issue on May 19, 2026
  2. hyperpolymath commented on May 26, 2026

    @hyperpolymath
    OwnerAuthor

    Closing as the ask is delivered. stdlib/dict.affine is in main and AOT-gated (#136):

    • empty, from_pairs — construction (make / fromArray equivalent) ✅
    • get, contains, size — access + introspection ✅
    • insert, set, remove — mutation ✅
    • keys, values — iteration support ✅

    This satisfies the make/get/set/fromArray/iteration minimum named in the issue. Pairs with #246 (Json) — the Http.affine:16 Dict/Json gap is now closed end-to-end.

    Filed as part of the T-6 issue-triage pass of the repo-tidy stack (see PR #359, #360, #365, #366, #367).


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew capability or improvement to existing behaviour

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions