cfbolz changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end ) | use cffi for calling C | if a pep adds a mere 25-30 [C-API] functions or so, it's a drop in the ocean (cough) - Armin
<simpson>
Silly question: I'm trying to deal with an implementation issue and I really would like Smalltalk-style `become:`, where I can transparently tell all of the referrers to some object to instead refer to a different object.
<simpson>
(My language has promises, and I am trying to deal with stack overflows when dereferencing chains of promises.)
<simpson>
Just to confirm my understanding, there's no built-in RPython technique for this, right? What I'm currently doing is examining all (three) fields of the promise, and copying them from one promise to another. It somewhat works, but not in all cases.
<simpson>
...This might be the point at which we contribute an ephemeron implementation for RPython. It would be a lot of work, but it would make our lives easier later on.
<cfbolz>
simpson: when does copying of fields fail?
<cfbolz>
Fwiw, that's what prolog does
<simpson>
cfbolz: It works, but the logic is just difficult to follow and debug. I've cleaned up a lot of the implementation, but the original logic came from JVM and had very different ideas about when recursion is okay.
<simpson>
Right now I'm debugging an iterative attempt at chasing pointers. It'll probably be fine and I'm probably just whining.
<cfbolz>
simpson: a full become is probably going to induce much worse headaches
<simpson>
Yeah. In this case, I really do want one object to transparently substitute for another; it's part of our whole distributed-computing gimmick.
jacob22 has quit [Read error: Connection reset by peer]
<mattip>
should we kill the failing test_warn_unicode test in pypy/module/_warnings/test/apptest_warnings ?
jacob22 has quit [Read error: Connection reset by peer]
jacob22 has joined #pypy
<cfbolz>
mattip: I am not sure. I think it's something like another test that doesn't clean up a warning filter or so
<cfbolz>
because if I run it directly, it passes
<mattip>
thanks
<Hodgestar>
antocuni, mattip: I agree that if there are only nightlies for py3.7, then hpy should target that. Maybe we can do one last merge back to py3.6 now since things are currently up to date with hpy itself.
<Hodgestar>
ronan: ^^^ Would you be okay with that?
<Hodgestar>
It looks like py3.7 is coming along nicely?
<cfbolz>
mattip: I'll skip it, I think, can't figure it out :-(