Por que a declaração de variável curta não é permitida no nível do pacote no Go?

Isso é permitido:

package main

var a = 3

...

Mas isso não é:

package main

a := 3

...

Por que não? Por que a declaração de variável curta fora de uma função pode ser tratada como uma declaração regular sem um tipo? Apenas para simplificar a análise?