<graingert>
Clearly there's some branches where dropvalues doesn't need to be called it the function started being called
<cfbolz>
graingert: I'm quite warming to this effort, fwiw. at first I thought that your changes wouldn't matter for the JIT too much. but I've now convinced myself that even if peak perf stays the same, warmup time should be slightly improved (might not be measurable, but still)
<graingert>
I'm trying to work out what's up with this
<graingert>
But everyone got bogged down in garbage collector differences
<graingert>
It's not about the GC it's about reachability
<graingert>
And I think reachability should be the same on all python implementations
<LarstiQ>
cfbolz: was that "warming to this effort" a warmup pun? :)
<cfbolz>
graingert: I'm sure there is a strong argument for why all of this is implementation defined. but I also think it's very useful to not be too horrible about it
<cfbolz>
LarstiQ: only accidentally
<graingert>
One interesting problem is it's hard to implement a function and maintain lsp
<graingert>
Is there a way to find out why an object is still alive when running a translated pypy-c?
Dejan has quit [Quit: Leaving]
<cfbolz>
graingert: not easily. one problem is that the rpython object graph has a lot of intermediate objects that aren't really valid python objects. we have an api exposed to introspect those a bit from python anyway, but you don't get a lot of interesting information out of them
<cfbolz>
that could be fixed, but it would be quite a bit of work I think