https://go.dev/tour/methods/8 There are two reasons to use a pointer receiver. The first is so that the method can modify the value that its receiver points to. The second is to avoid copying the value on each method call. This can be more efficient if the receiver is a large struct, for example.
и да, и нет, чем больше указателей, тем быстрее будет вызван gc плюс значения, на которые указывают указатели, чаще всего находятся на куче, а к ней доступ более медленный
А что плохого в более быстром вызове gc?
там скорее более частом, из-за чего надо делать stop the world и тд
про указатель vs значение https://youtu.be/8UESXMJwTpc?t=948
И стоит сказать, что если рантайм го решит передать по указателю, то он передаст по указателю.
Рантайм го - подросток
Правильней все-таки сказать компилятор, а не рантайм:)
Обсуждают сегодня