Parser: give syntax error on comma after newline in argument list#6514
Merged
RX14 merged 1 commit intoAug 29, 2018
Merged
Conversation
Member
Author
|
Hmmm... actually, Java, C# and Python allow such syntax. But Ruby and Go don't. So I guess it's a matter of preference. Right now it's behaving in a way or another depending on the case, so it's not unified. Let's use this PR to discuss what should we do with this. Maybe this PR is fine, it hurts my eyes a bit to see that stray comma there :-P |
759d686 to
d9bdf9e
Compare
d9bdf9e to
fe6c135
Compare
Contributor
|
This syntax (leading comma) was used in JS community, but isn't used widely nowadays. I guess everybody realised it's ugly. |
RX14
approved these changes
Aug 11, 2018
Member
RX14
left a comment
There was a problem hiding this comment.
Judging by the silence on this issue, this is fine to remove
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #6513
Code like this:
currently doesn't give a syntax error, but it should (like in Ruby). We can of course discuss whether it should really be a syntax error or not. My reasoning is that the comma signals that more arguments are coming, and it's confusing that the comma starts the next line. For example, if we remove the parentheses:
that won't compile. So code with and without parentheses should look more or less the same (maybe this is a weaker argument, but still...).
I believe in many other languages this is a syntax error too.
This of course is a breaking change, but I doubt there are many out there that write code like this.
This syntax option was available for many other things, like method arguments, but not available in some other things, like array literals. Now it's unified to give a syntax error.