Python 3.13 Aiming For More Performance

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • uid313
    replied
    Originally posted by Turbine View Post
    It's just a shame this language is so poorly designed.

    I have to use Python at work. But for everything else I use JavaScript/Node. Using Python is quite painful at times. Especially for large projects.
    Which parts of it do you find poorly designed?

    I like Python for small scripts, and there are things that I like about Python, it is neat for prototype, algorithms and as pseudocode, but I would hate to use it for large projects.

    I think the the type hinting is confusing, and the distincion between class instance fields and static fields aren't obvious, and don't like that there is no async HTTP client in the standard library, doing async things is more complicated than it needs to be, it is much easier in C# and JavaScript, and I don't like that the standard JSON module cannot deserialize JSON into a class.

    Leave a comment:


  • Turbine
    replied
    It's just a shame this language is so poorly designed.

    I have to use Python at work. But for everything else I use JavaScript/Node. Using Python is quite painful at times. Especially for large projects.

    Leave a comment:


  • fitzie
    replied
    Originally posted by uid313 View Post
    Great for hyperscalers and AI but for applications (such as GIMP or Blender) that wish to integrate a scripting language, Python sucks because it cannot be sandboxed, you cannot limit anything, when you give load Python you give any script access to the entire system and everything in the application.

    Extra performance is great for the big companies and AI people, but for normal programmers and tinkerers it is fast already fast enough, the shortcomings are others such as no async HTTP client in the standard library, and async is unnecessary difficult, you cannot just await at the top-level, you must first pick an async executor.
    I tend to agree that one of the nice things about python is that the standard library is complete, for most scripts one would write. as for writing serious applications, using external packages is a must. my biggest issue with asyncio is not that you need to add one line of code, it's that it's really hard to write a library that's both async and non-async friendly. I miss the old days where you can use gevent and which would just patch the functions to become magically concurrent.

    as for performance, the AI guys are doing most of their work in c++ and just wrapping it together with python. Python has major limitations to its performance *gil*, and they had just given up on all the low hanging fruit outside of the gil. It's important that they are doing all this work as it makes life just a bit better for all python programmers and users. Of course, python community will soon have to reckon with mojo which could come in like a wrecking ball.

    Leave a comment:


  • fitzie
    replied
    Originally posted by sbivol View Post
    Is CPython what's being embedded into Blender? Even if it was – Blender can compile out whatever functionality is not desired.
    If you're running applications outside a sandbox then you're doing it wrong to begin with, Python can't help with this.
    Also, you're confusing Python and CPython.
    I think the use case for a plugin safe sandbox, is to say that a plugin can only call some approved functions within a limited api, kinda like how in chrome/firefox you give them do very limited things, even within a sandboxed environment. I think the future of that would be something like wasm, where application authors don't need to worry about what language the plugin is written in.

    Leave a comment:


  • sbivol
    replied
    Originally posted by uid313 View Post
    Great for hyperscalers and AI but for applications (such as GIMP or Blender) that wish to integrate a scripting language, Python sucks because it cannot be sandboxed, you cannot limit anything
    Is CPython what's being embedded into Blender? Even if it was – Blender can compile out whatever functionality is not desired.
    If you're running applications outside a sandbox then you're doing it wrong to begin with, Python can't help with this.
    Also, you're confusing Python and CPython.

    Extra performance is great for the big companies and AI people, but for normal programmers and tinkerers it is fast already fast enough
    I will take the extra performance, thank you very much.

    Leave a comment:


  • uid313
    replied
    Great for hyperscalers and AI but for applications (such as GIMP or Blender) that wish to integrate a scripting language, Python sucks because it cannot be sandboxed, you cannot limit anything, when you give load Python you give any script access to the entire system and everything in the application.

    Extra performance is great for the big companies and AI people, but for normal programmers and tinkerers it is fast already fast enough, the shortcomings are others such as no async HTTP client in the standard library, and async is unnecessary difficult, you cannot just await at the top-level, you must first pick an async executor.

    Leave a comment:


  • phoronix
    started a topic Python 3.13 Aiming For More Performance

    Python 3.13 Aiming For More Performance

    Phoronix: Python 3.13 Aiming For More Performance

    Python 3.12 isn't even being released until October and Python 3.13 won't be out until H2'2024, but already the developers working on tuning CPython performance are aiming to make more enhancements this next development cycle...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite
Working...
X