language
language copied to clipboard
Design of the Dart language
Dart currently only allows passing arguments by value (where object references are values). However, the language has first class closures which can close over variables, so you can *effectively* pass...
This issue raises the question whether we should resolve the invocation of a constructor for a class `C` which is declared by several static extensions based on the constructor return...
Looking at https://github.com/dart-lang/sdk/issues/51926, it occurs to me that we may be boxing users in to a kind of unfortunate situation where the only way to avoid an error is with...
@lrhn proposed this feature in a particular context. I think it's both useful and Darty, and we should consider the proposal in a more general form. Here we go: >...
Flutter has a class that has multiple factory methods which start with "with". I'd like to make one named "with" that supersedes them. By keeping the names the same they...
The rule about switch statements is [here](https://github.com/dart-lang/language/blob/master/resources/type-system/flow-analysis.md#statements). Consider the following example: ```dart enum Enum { one, two } void main() { Enum e = Enum.one; num n; switch (e) {...
The semantics of [`augmented()` in the body of an augmenting declaration of a non-redirecting generative constructor](https://github.com/dart-lang/language/blob/main/working/augmentation-libraries/feature-specification.md#non-redirecting-generative-constructors) is complex, and it treats parameters in a way which is different from the...
TL;DR: Don't allow `part` and `part of` to use shorthand URIs. They should always be relative URI references anyway. Added benefit is discontinuing the old syntax without immediately allowing the...
Today, doing this is not allowed. We get: `An instance member named 'values' can't be declared in a class that implements 'Enum'. Try using a different name. (illegal_enum_values)` ```dart mixin...
Dart distinguishes between declaration patterns, assignment patterns and matching patterns, where only matching patterns are allowed to be refutable. It makes sense that declaration patterns must be irrefutable, otherwise the...