This repo tracks design work to try to extend Dart syntax to better support Flutter's style of UI code and similar code in other frameworks.
Usual caveats apply: the work is early, experimental, and subject to change. It might not pan out at all.
Docs
-
Motivation - A detailed breakdown of the current usability problems that we're trying to improve.
-
Constraints - Softer guiding principles to help get as much value as we can from a solution.
-
Research - Background information on other languages and frameworks and how they approach this. Prior art, inspiration, and pitfalls to avoid. JSX gets its own page.
-
Choices - High level survey of different approaches to handling conditional execution.
Proposals
-
Parameter Freedom - Loosen restrictions around positional, optional, and named parameters. Add rest parameters and a spread operator. Let API authors define flexible, expressive parameter lists that free callers from writing useless boilerplate.
-
Spread Collections - Allow the same
...
spread syntax from Parameter Freedom to be used in list and map literals to insert multiple elements.