FStarLang / pulse

The Pulse separation logic DSL for F*
Apache License 2.0
6 stars 7 forks source link

Packing records? #141

Open mtzguido opened 4 months ago

mtzguido commented 4 months ago

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.