Neznám Go tak dalece, ale je možné, že to je podobné, jako v Rustu. Tam jsou některé ukazatele dvakrát delší, než nativní délka pointeru, protože kromě samotné adresy obsahují taky jakýsi identifikátor typu objektu (u traitů v Rustu např pointer na ekvivalent v-table). Takže když budu mít pole typu [&Krava; 10] a Krava je trait, tak to bude taky celkem 160 bajtů.
Podle tvého příkladu to vypadá, že Worker je asi interface a Calculon bude objekt, který podporuje Worker, takže to je stejná situace. Je tedy dost možné, že na to Go používá podobný mechanismus, tj. každý pointer jsou vlastně dva: jeden na samotný objekt Calculon, a jeden na vtable Worker pro Calculon.
Možná to ale tak vůbec není a některý z místních expertů na Go mě vyvede z omylu.