“v jazyce Go není například možné inicializovat všechny typy globálních proměnných (například mapy). Vlastní naplnění map je tedy nutné provádět v nějaké funkci”
To IMHO není pravda, globální proměnné můžu předat literál mapy bez problémů (například var m = map[int]string{1: "a", 2: "b"}). Nebo jsem něco špatně pochopil?
Myslel jsem to jinak (o tom, že to nebude v code bloku), ale raději jsem tu poznámku teď smazal, protože to není pro článek důležité a taky to vlastně není ve specifikaci Go, takže se konkrétní chování může kdykoli změnit.
To je peklo všude, v neposlední řadě kvůli správě paměti. V Rustu to je taky zapeklité a do překladače ObjC blahé paměti kvůli ARC přidávali nové konstrukce pro předávání objektů do/z céčkové CoreFoundation.
Doufám, že dojde i na toll-free bridging v Go :)
Nojo je to peklíčko. Asi i proto se lidi opájeli "skvělostmi" typu COM apod., když na toto narazili.