Live data from Hacker News

Viewing profile — cfbolztereick

cfbolztereick

HN member
Joined
Sat, Dec 17, 2022, 6:39 PM UTC
HN karma
155
Public activity
21 items

About cfbolztereick

No profile information was provided.

Recent public activity

  1. comment
    Comment #47320324

    Exactly correct. PyPy is a replacement for CPython 3.11, which aims to be fully compatible with pure Python code (C extensions are a more complicated story).

  2. comment
    Comment #47297877

    Timely management of external resources is what the `with` statement has been for since 2006, added in python 2.5 or so. To debug these problems Python has Resource Warnings. Addit…

  3. comment
    Comment #47295551

    PyPy isn't unmaintained. We are certainly fixing bugs and are occasionally improving the jit. However, the remaining core devs (me among them) don't have the capacity to keep up wi…

  4. comment
    Comment #44009416

    The English term for 'Bildungsroman' is actually... 'bildungsroman' https://en.wikipedia.org/wiki/Bildungsroman

  5. comment
    Comment #43572796

    Complaining about a rest (however long) in a piece by the composer of 4'33'' is certainly A Take.

  6. comment
    Comment #43464953

    This is really fun, I'm getting badly nerd sniped by this.

  7. comment
    Comment #42683601

    It should get pretty good performance yes. Not sure how native like we get with the jit. Gut feeling would be a bit slower than gcc -O0? I would be very interested in your experien…

  8. comment
    Comment #42664192

    The equivalent of this (and strongly inspired by luajit's ffi) in the python world is cffi, btw: https://cffi.readthedocs.io/en/stable/

  9. comment
    Comment #42659006

    And a significant chunk of these important extension libraries are supported in pypy using the emulated C-extension api (cpyext)

  10. comment
    Comment #41931822

    Yeah, that's exactly right. It's operating on an SSA-based intermediate representation. So if an operation gets removed, the arguments are still being computed. The earlier operati…

  11. comment
    Comment #41928178

    I only support integer operations in the DSL so far. (but yes, turning the python expression x*y+z into an fma call would not be a legal optimization for the jit anyway. And Z3 wou…

  12. comment
    Comment #41323852

    Yeah, that's a good point! The 'empty' parts of the beginning of the program are actually a 'configure' phase, where the program runs a bunch of subprocesses (C compiler with small…

  13. comment
    Comment #41323827

    Good idea! There are various other extensions possible. Unfortunately there's a bit of an observer effect, the sounds are made with python code running in the same process, and the…

  14. comment
    Comment #41323801

    Oh wow, that's just amazing, thanks for the link! From the article: ''' Interestingly, there was a technical bump or glitch in the Unity Engine. A feature that no user would normal…

  15. comment
    Comment #41032336

    Yep, typo, thanks for pointing it out! I'm fixing it.

  16. comment
    Comment #41028161

    PyPy has formally verified the integer abstract domain using Z3, a quite important part of our jit optimizer (will write about that in the coming weeks). We also run a fuzzer regul…

  17. comment
    Comment #41026750

    All the minimized inefficiencies that are found by my script are already optimizations. They just happen to be rather specific patterns, so they need to be suitably generalized. Th…

  18. comment
    Comment #38845770

    PyPy was started early in 2003 too, the first release took a while. PyPI was branded as 'The Cheeseshop' in the early years.

  19. comment
    Comment #34030823

    Yeah, that's my current project, already found a bunch of missing small features in the optimizers.

  20. comment
    Comment #34030815

    There would be an actual miscalculation, yes. which is a really annoying kind of bug, also because these jit bugs tend to go away if you turn the debugger on, making them even more…

  21. comment
    Comment #34030764

    Yeah, the generated traces are 'sensible' by construction (they don't compute anything sensible, but they are well-formed).