Funzioni e Closures

Le funzioni sono una componente fondamentale della sintassi del Go.

Il loro comportamento ha alcune differenze rispetto a linguaggi più tradizionali, per esempio possono tornare più valori.

Vi sono funzioni variadiche, cioè che accettano un numero variabile di parametri.

Come in altri linguaggi sono supportate funzioni ricorsive. Ogni istanza di invocazione di funzione crea un frame nuovo nello stack.

I parameri e i valori di ritorno delle funzioni possono essere gestiti sia per valore che per riferimento.

Le closure costituiscono una forma di funzioni anonime. Una funzione può ritornare come valore un'altra funzione.