Raise ArgumentError for nil, and non numeric argument

* e.g. using "foo" as an absurd example