FStarLang / FStarLang/pulse

Packing records?

Open
#141 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
36
Forks
11
PR merge metrics
No merged PRs in 30d

Description

From call today: can we add some syntax like `pack {x=e;y=f} as r`, that elaborates to something like `let r = {x=e; y=f}; rewrite each e as r.x; rewrite f as r.y;` to comfortably use records? Or would it be enough to define a packing function for each given type? The latter alternative would not do any rewrite in the frame.

Contributor guide

No contributing guide indexed for this repository

Research direction

No files, tests, or entry points are named. First compare the proposed `pack {x=e;y=f} as r` elaboration with the alternative per-type packing function, then establish the intended syntax, rewrite behavior, and acceptance criteria before identifying the implementation and tests.

Written by the indexing model from the issue text.

Assessment

Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.