Sebuah closure adalah fungsi yang merujuk pemboleh ubah daripada skop sekitarnya, "menutup" mereka — fungsi mengekalkan akses ke pemboleh ubah tersebut bahkan selepas fungsi yang menutup ia kembali. Fungsi Go adalah nilai kelas pertama, menjadikan closure alat yang biasa dan berkuasa.
Closure asas
{
count :=
{
count++
count
}
}
counter := makeCounter()
fmt.Println(counter())
fmt.Println(counter())
other := makeCounter()
fmt.Println(other())
