>> An alternative design is to treat all parameters as keyword
>> arguments (as Evan said in [ruby-core:40195]).
>>
>> =A0def create_point(x, y, color =3D "white", size =3D 1)
>> =A0 =A0p [x, y, color, size]
>> =A0end
>> =A0create_point(color: "red", x: 2, y: 3)
>> =A0 =A0#=3D> [2, 3, "red", 1]
>>
>> Actually I also like this, but I'm afraid if it is too flexible
>> and seems difficult to implement and optimize.

+1 for this way, if at all possible.
Then it is more flexible, and Ruby is all about shooting for the stars
feature-wise, right? :)
-r