Re:Making a Go program 70% faster with a one character change
by foldr on Wednesday November 16, 2022 @01:00PM
(#33627565)
I'm not seeing how that would cause a memory leak. It just means that the value might be GCed a bit later. Could you give an example?
[ Parent
| on HN ]
Re:Making a Go program 70% faster with a one character change
by amluto on Wednesday November 16, 2022 @04:33PM
(#33630994)
It’s a temporary leak. My point is that it’s an actual side effect, unlike how in C it has no effect whatsoever if the value is ignored.
In a language where destruction of an object often releases external resources (C++, for example, or Python or Rust to a lesser extent), this effect would be more dramatic. Imagine someone doing this in Python:
def func():
f = tmpfile(…)
err = do something
return f, err
This style would be absurd and wrong — it keeps f alive to long.