Issue #9025 has been updated by Martin Drst.


Matthew Kerwin wrote:
> duerst (Martin Drst) wrote:

> > Ruby is all about making it easier for the programmer. Even the smallest amount of debugging is too much when it can be eliminated by tweaking theerror message.
> 
> I think that statement accidentally reached a point of absurdity by usinga very precise definition of "debugging" that I don't share.

It might have been clearer for me to write "Even the smallest reduction in the amount of debugging is worth it when it can be achieved by tweaking theerror message."

Anyway, if it doesn't make life easier for you, that's no problem. It won'thurt you, and it will help others, even if you might not believe it.

----------------------------------------
Feature #9025: Clarify the error message when calling a method with the wrong number of arguments
https://bugs.ruby-lang.org/issues/9025#change-54541

* Author: Gonzalo Rodrguez
* Status: Open
* Priority: Normal
* Assignee: 
----------------------------------------
Currently when calling a method with the wrong number of arguments we get aconfusing error message:

    ArgumentError: wrong number of arguments (1 for 0)

That means that the method was meant to accept 0 arguments, but 1 was provided instead. This error message is confusing, and a large number of people had to search for its meaning. For example [1] has 11000 views.

I propose that we change the error message to something whose meaning is obvious. Examples:

*  ArgumentError: wrong number of arguments (expected: 1,  provided: 0)
*  ArgumentError: wrong number of arguments (1 instead of 0)

This ticket originated from this pull request: https://github.com/ruby/ruby/pull/367

[1] http://stackoverflow.com/questions/7537450/what-does-wrong-number-of-arguments-1-for-0-mean-in-ruby



-- 
https://bugs.ruby-lang.org/