Optional arguments for definition - Syntax Error is not the correct Error type
The below definition throws a Syntax Error, while there is no syntax error and I'm not sure what is the intention behind the Syntax Error
def hello(foo="bar", bar, yanko="me") p "Hello" end
The same definition below with a tiny modification in the argument set, give a Syntax OK.
def hello(foo="bar", bar="foo", yanko="me") p "Hello" end
It seems when there is a required argument in the definition that happens to be in between optional arguments that triggers a Syntax Error, I think the ArgumentError is more related to it.
This has been tested on mostly every ruby version after 1.8.7 and it gave the same result.