Skip to content

Implicit fixed result names (comparison, measure-status, …) collide silently #22

@rmichaelthomas

Description

@rmichaelthomas

Severity: medium (footgun in longer programs)

Several verbs write their results to hard-coded symbol names with no way to choose:

  • compare X to Y → always writes record comparison
  • measure …measure-status, measure-matched, measure-delta
  • verify … (session pack) → verification-status, verification-divergences

Two compares in one program silently clobber the first result; there is no compare X to Y as <name>.

Why it matters

As programs grow this is an invisible namespace contract. The second result overwrites the first with no warning, and the names aren't obvious from the call site.

Recommendation

Allow an optional as <name> capture on these verbs, keeping the current fixed name as the default:

compare draft to final as draft-vs-final
show draft-vs-final

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestlanguage-designChanges to Liminate language design or specification

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions