Skip to content

Instantly share code, notes, and snippets.

package main
import "fmt"
func adder() (func(int) int) {
var x int
return func(delta int) int {
x += delta
return x
}
package main
import "fmt"
func adder() (func(int) int) {
var x int
return func(delta int) int {
x += delta
return x
}
@gregworley
gregworley / gist:591888
Created September 22, 2010 15:28
Function Literals are closures
package main
import "fmt"
func adder() (func(int) int) {
var x int
return func(delta int) int {
x += delta
return x
}
@gregworley
gregworley / Function_literals_are_closures.go
Created September 22, 2010 15:30
Golang GoCourseDay1.pdf slide 53
package main
import "fmt"
func adder() (func(int) int) { //declare function adder() with the function literal func(int) as a parameter of type int
var x int
return func(delta int) int {
x += delta
return x
}
package main
import "fmt"
func f() {
for i := 0; i < 10; i++ {
g := func(i int) {
fmt.Printf("%d", i)
}
g(i)
package main
import (
"os"
"flag" // command line option parser
)
var omitNewline = flag.Bool("n", false, "don't print final newline")
const (
package main
import (
"./iopkg"
"fmt"
"os"
)
func main() {
hello := []byte("hello, world\n")
package file
import (
"os"
"syscall"
)
type File struct {
fd int // file descriptor number
name string //file name at Open time
// A version of echo - go/docs/GoCourseDay1.pdf slide 59
package main
import (
"fmt"
"os"
)
func main() {
// go/doc/GoCourseDay1.pdf slide 62
package main
import (
"fmt"
"./transcendental"
)
var twoPi = 2 * transcendental.Pi //decl computes twoPi
func main() {