dart-lang / dart-lang/language
Optional Semicolons
- Dominant language
- TeX
- Stars
- 2.9k
- Forks
- 239
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 14
Description
Many programming languages (incl. TypeScript, Swift, and Kotlin) support omitting semicolons as explicit statement separators. We consistently hear from developers who come to Dart from those languages (for example, to implement Flutter apps), that they find the mandatory semicolons irritating & pointless. In addition, removing the need for terminating statements with semicolons would also support our overall goal of reducing boilerplate, and making Dart as terse as possible; however we need to be mindful of also keeping it readable, unambiguous, and unsurprising.
*Current status*: After a longer investigation we have currently put this on hold, as a reasonable implementation of this would have to involve some rather large syntax changes to the language. Please see the [detailed write-up](https://github.com/dart-lang/language/blob/master/resources/optional-semicolons-prototype.md) for additional information.
Contributor guide
Research direction
Start by reading resources/optional-semicolons-prototype.md, the detailed write-up linked from the issue. The issue says the work is on hold because a reasonable implementation would require large syntax changes; done would mean a readable, unambiguous, unsurprising approach to omitting statement-ending semicolons.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- dart
- Domain
- compilers
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100