Supongamos que tenemos un método que es declarado con
o parámetros ordinarios,
d parámetros con valores por defecto
*
a argumentos.
a < o se genera una excepción ArgumentError
a >= o y a <= o+d entonces los a-o parámetros con defecto mas a la izquierda tendrán argumentos asignados.
Los restantes o+d-a tendrán los valores por defecto
a > o + d entonces el array de parámetros cuyo nombre se prefijo con
* tendrá a-o-d argumentos. En otro caso estará vacío
Casiano Rodriguez León 2015-01-07