When two or more consecutive named function parameters share a type, you
can omit the type from all but the last
Variadic
Go also supports variadic
functions, ie functions
with any number of trailing arguments:
Returns
Multiple results
A function can return any number of results
Named return values
Go’s return values may be named. If so, they are treated as variables
defined at the top of the function. These names shoudl be used to
document the meaning of the return values. A `return` statement
without arguments returns the named return values. This is known as a
“naked” return. Naked return statements should be used only short
functions as they can harm readability in longer functions.