Go Struct - Public?

When defining a struct in Go, the data portion of the struct has both internally visible and externally visible portions (domain vs Domain). Because you can attach a method to the struct, the internal vs. external visibility is important.

type Thing struct {
  internal: int
  External: int
}

// ...

t = Thing {
  internal: 1
  External: 2
}
log.Printf("%v", t) // Will not output `internal`.