¿Por qué no se permite una declaración de variable corta a nivel de paquete en Go?

Esto está permitido:

package main

var a = 3

...

Pero esto no es:

package main

a := 3

...

Por qué no? ¿Por qué una declaración de variable corta fuera de una función no podría tratarse una declaración regular sin un tipo? ¿Solo para simplificar el análisis?

Respuestas a la pregunta(3)

Su respuesta a la pregunta