Ponto negativo é que não é Orientado a Objetos.
Na verdade, é sim possível, embora não seja muito popular. Veja:
package main
import "fmt"
type Pessoa struct {
Nome string
Idade int
}
func (p Pessoa) Apresentar() {
fmt.Printf("Olá, meu nome é %s e tenho %d anos.\n", p.Nome, p.Idade)
}
func main() {
pessoa1 := Pessoa{Nome: "Alice", Idade: 30}
pessoa1.Apresentar()
}