cfbolz changed the topic of #pypy to: #pypy PyPy, the flexible snake | IRC logs: and | Matti: I made a bit of progress, the tests now only segfault towards the end
f4at has quit [Quit: bye]
otisolsen70 has joined #pypy
otisolsen70 has quit [Remote host closed the connection]
otisolsen70 has joined #pypy
slav0nic has joined #pypy
otisolsen70 has quit [Quit: Leaving]
<LarstiQ> huh, interesting crash in on `class B(A, QGraphicsWidget): pass`
<cfbolz> LarstiQ: ah
<arigato> cfbolz: re refcounting, maybe we should get rid of that
<cfbolz> arigato: yes, I was thinking that too
<cfbolz> arigato: re gecrefs, I went and tried to do that with fixed and var-sized lists, it seems to work nicely
<arigato> I guess so
<arigato> many tests fail, though, because they rely on refcounting, right?
<cfbolz> no, just a handfull
<cfbolz> most rtyper tests are fine
<cfbolz> and pypy-c-jit works nicely
<arigato> OK
<cfbolz> arigato: I will try dicts next (we have 74 different ones)
<cfbolz> (including 3000 functions that operate on them, out of 40000. not sure that that's a quantity that matters)
<mattip> The geometric average speedup on went from ~4.5 to ~4.7. Nice
Atque has joined #pypy
<arigato> mattip: yay :-)
<antocuni> so, tonight I'm going to the "Open Source Hack Night" organized by PyLadies Berlin
<antocuni> do we have any easy task for newcomers, in case anyone is interested in hacking at PyPy?
<cfbolz> antocuni: (semi-serious) start on 3.10?
<antocuni> I admit I'm not very up-to-date with PyPy development :)
<antocuni> what's the status w.r.t. CPython versions?
<cfbolz> we've done all 3.9, apart from frustrating tiny things
<antocuni> that's very good for 3.9, not so good for the hack night :)
<cfbolz> exactly
<cfbolz> hence my suggestion
<antocuni> I'm not sure that starting a brand new 3.10 branch is a good idea for tonight; we need to copy the 3.10 stdlib, fix the conflicts (if any), run tests and see what fails?
<Corbin> Are there any numpy/micronumpy tasks that are easy? I guess the low-hanging fruit's all gone.
<cfbolz> antocuni: simpler idea: backport this feature:
<cfbolz> it's an extra optional argument to zip
<antocuni> this might be perfect!
<antocuni> we can do it in a branch of 3.9, and port it to 3.10 when it's time
<cfbolz> antocuni: yes, we have done several 3.x features like that
<cfbolz> because importing the stlib is very hard if you can't parse it, for example
<antocuni> do you mean that pypy 3.9 has features which on CPython are 3.10 only/
<antocuni> ?
<cfbolz> antocuni: no
<cfbolz> antocuni: but eg when I started the 3.9 branch: I branched 3.8, started working on that, imported the 3.9 stdlib *much* later
<antocuni> I see
<antocuni> makes sense
<cfbolz> antocuni: another feature that is a candidate is "or" on types: int | float
<antocuni> I didn't know about that, is there a PEP? I can't find it with a simple google
<antocuni> thanks
<antocuni> ah, I though it was about doing things like 1 | 2.0
<cfbolz> it's weird typing stuff ;-)
<cfbolz> zip is much more real
<antocuni> agreed
<cfbolz> if you want to do it though: grep for genericalias on the 3.9 branch
<cfbolz> it's a similar feature for __getitem__ on types
<antocuni> to do e.g. list[int]?
<cfbolz> yes
<cfbolz> in cpython it's all done in C, in pypy mostly pure python
<cfbolz> apart from the actual __getitem__, but that calls out to pure python
<antocuni> I can't find the implementation though; grep genericalias shows only tests and cpyext stuff
<cfbolz> antocuni: lib_pypy/
<antocuni> thanks
<cfbolz> I suppose the Union stuff would go in the same file, which should then be renamed
<cfbolz> antocuni: btw, we already use the new parser and I mostly tried to use the 3.10 grammar in our 3.9. I just removed the pattern matching rules
<antocuni> I will keep it as the 2nd choice though, the zip thing is much easier to explain and to implement
<cfbolz> yes
<antocuni> moreover, we will need to do the usual heptapod dance before being able to push things :(
Dejan has joined #pypy
reneeontheweb has joined #pypy
Atque has quit [Quit: ...]
reneeontheweb has quit [Ping timeout: 252 seconds]
slav0nic has quit [Ping timeout: 260 seconds]