@cfbolz@mastodon.social
@cfbolz@mastodon.social avatar

cfbolz

@cfbolz@mastodon.social

PyPy/RPython contributor. Half time teaching at Uni Dรผsseldorf. Works on dynamic language implementations. Vegan. Love street art and art in public spaces, hiking, reading.
they/them/?

This profile is from a federated server and may be incomplete. Browse more on the original instance.

hugovk, to python
@hugovk@mastodon.social avatar

๐Ÿ“ฃ๐Ÿ๐Ÿ“š Calling all Python library maintainers!

Python 3.13 is now in beta, with the second of four beta releases out later today!

It's now time to start testing your libraries with 3.13 and report any problems back to CPython so they can be fixed before the big October release. And make any updates you need to upgrade your library; keep an eye out for removals and deprecations.

Here's how to test 3.13 on GitHub Actions:

https://dev.to/hugovk/help-test-python-313-14j1

#Python #Python313 #beta #GitHubActions

cfbolz,
@cfbolz@mastodon.social avatar

@hynek @hugovk I think it's mainly undermaintained (just like everything else) :-(

cfbolz, to random
@cfbolz@mastodon.social avatar

I just merged the PyPy "known bits" JIT optimization that Nico Rittinghaus and I worked on in the last two years. It allows the JIT to reason about specific bits of integer variables that are known to be 0 or 1. This makes bit-manipulation code faster, sometimes significantly so.

A concrete example of something the JIT now knows, but didn't before: if you add two even integers together, you get an even result.

cfbolz,
@cfbolz@mastodon.social avatar

Code that does a lot of bit twiddling (eg bitwise and, or, xor, shifts, etc) is not so common in Python, so this does not really help on "normal" Python benchmarks and code.

However, it helps Pydrofoil a lot, our sibling project that uses the RPython JIT to generate jitted full-system emulators for RISC-V and ARM:

https://docs.pydrofoil.org/en/latest/

e.g. booting Linux on Pydrofoil-ARM becomes 30% faster.

cfbolz, to random
@cfbolz@mastodon.social avatar

I just learned that there are floating point numbers that have non-unique (positive) square roots:

>>>> s = {4.472135954999575e-155, 4.472135954999576e-155, 4.472135954999577e-155, 4.472135954999578e-155, 4.472135954999579e-155, 4.4721359549995795e-155, 4.47213595499958e-155}
>>>> len(s)
7
>>>> {x * x for x in s}
{2e-309}

(I suppose it's obvious in hindsight, but I still didn't expect it somehow)

cfbolz, to random
@cfbolz@mastodon.social avatar

I suppose it's better than the usual news

adamchainz, to python
@adamchainz@fosstodon.org avatar

๐Ÿโ™ฆ๏ธ Use Git to pass pytest a list of all modified test files:

pytest $(git diff --name-only '/test_.py')

Adjust the pathspec (Gitโ€™s โ€œglobโ€ syntax) if you have a different test file naming convention.

#Python #Git

cfbolz,
@cfbolz@mastodon.social avatar

@adamchainz I've wanted a way to do this on the individual test function level for a long time. Something like --ff but 'run changed/new tests first'

pervognsen, (edited ) to random
@pervognsen@mastodon.social avatar

This is my 30 years belated realization that PHIGS was a 'graphics' pun pretending to be an acronym. I'm not sure if that makes me hate it more or less. I'm leaning towards more. The focus on PHIGS was less welcome when I read Foley and Van Dam than the chapter on dot-matrix printing which at least had some timeless "how stuff worked" appeal. Teaching specific APIs in a textbook almost never ages well.

cfbolz,
@cfbolz@mastodon.social avatar

@pervognsen heh, I read 'GC textbooks' first and was a bit confused for a second

  • All
  • Subscribed
  • Moderated
  • Favorites
  • โ€ข
  • anitta
  • ethstaker
  • DreamBathrooms
  • InstantRegret
  • magazineikmin
  • tester
  • khanakhh
  • everett
  • thenastyranch
  • Youngstown
  • slotface
  • tacticalgear
  • kavyap
  • osvaldo12
  • JUstTest
  • mdbf
  • GTA5RPClips
  • ngwrru68w68
  • provamag3
  • Durango
  • rosin
  • cisconetworking
  • normalnudes
  • modclub
  • megavids
  • cubers
  • Leos
  • lostlight
  • All magazines