Что мне определить рекурсивный метод с переменными аргументами в ruby?
Я думал
def meth(var, *var) meth(var,var) end
Если я сделаю это таким образом, var станет массивом на следующей итерации.
Используйте восклицательный знак, когда вы вызываете его (как вы это делаете с & при передаче блока, а не его определения):
def meth(var, *var) meth(var,*var) end
Наименее сюрприз!