yeeah just to make a more nuanced comment
i think it was an error in Go's design to not make memory management more explicit
i tend to think of every var statement as an allocation instruction, but i don't think that's how it works actually
the trickiest thing is what to do when you produce values that you need to send outside of a function scope, and specifically when they are pointers, pointers make such a mess, but are neccessary, and at the same time extremely troublesome because it's nearly impossible to deduce until you actually execute it in every possible condition what actually happens to the memory
odin looks interesting but i'm too committed to Go tbh
it's just annoying the piss out of me new quirks in the modules system causing me a headache
i honestly wish there was an opt out for modules, i miss the old days, oh, there was problems with mangled gopaths if you worked on more than one unrelated project in the same gopath but tha could have been fixed so much more simply than modules, i still hate modules, took me a year to finally bend to them and i still regret it