(Go Lang) Variadic Functions (GBEN)

Example

Like in Lisp

slice... syntax when you pass to a function

// Variadic functions can be called with any number of trailing arguments. For// example, fmt.Println is a common variadic function.// Run code// Here’s a function that will take an arbitrary number of ints as arguments.
sum := func (nums ...int) {
fmt.Print(nums, " ")
total := 0
for _, num := range nums {
total += num
}
fmt.Println(total)
}
// Variadic functions can be called in the usual way with individual arguments.sum(1, 2)
sum(1, 2, 3)
// If you already have multiple args in a slice, apply them to a variadic function using func(slice...) like this.
nums := []int{1, 2, 3, 4}
sum(nums...)