[Records] Informal feature specification
[2022-09-14] Moved to accepted here.
~~In progress draft: https://github.com/dart-lang/language/blob/master/working/0546-patterns/records-feature-specification.md~~
I'm definitely writing the proposal, but it's usually @eernstg who translates that into the official language spec.
@munificent does @eernstg typically do this for all language features or just a specific subset?
I'm typically the one who is updating the language specification, and at times I also create proposals for updates to feature specifications where I wasn't the author in the first place (e.g., if some murky corner case comes up and we need to make adjustments to an existing feature spec).
@eernstg thank you for clarifying. For template purposes when creating projects, do you mind if I assign you as the default owner for these tasks?
No problem, but it might be more in line with reality if the assignee isn't chosen by default. For instance, the records proposal is very much driven by @munificent and I haven't done anything other than commenting on small things along the way. ;-)
Yeah, usually the way this works (as I understand it) is that the feature designer (me in this case) owns defining it in the informal specification until the feature gets accepted. Then, in parallel with the implementations or after, @eernstg adds the feature to the language specification.
If this issue is tracking "design the feature", then I own it. If it's tracking, "add the feature to the Dart language specific doc", then Erik probably does.
Let's make this about the feature spec; that's the one that most eng. work is gated by.
I'm trying to clean up the GitHub Project tracking this feature work. Are we ok to close out this issue as complete @eernstg and @munificent?
Perhaps we should settle https://github.com/dart-lang/language/issues?q=is%3Aopen+is%3Aissue+label%3Arecords?
Yes, I think it's fine to close this. There two remaining issues that are relevant to specifying records, #2578 and #2503. But resolving those will likely not involve changes to the actual records proposal itself since inference and type promotion are specified elsewhere.
Let's call it done! 🚢