Variadic function — функция, которая принимает переменное количество аргументов. Объявляешь параметр с тремя точками: func sum(nums ...int). Внутри nums — обычный слайс []int. Вызывать можно как sum(1, 2, 3), а можно развернуть слайс: sum(numbers...). Самый известный пример — fmt.Println, который принимает любое количество аргументов. Variadic параметр может быть только один и только последним.