4 ms·
This is the least of Python's problems, but makes for a good populist discussion that will keep Python on the front page for yet another 10 hours. This is how
by kaplpot 2y ago
This is the least of Python's problems, but makes for a good populist discussion that will keep Python on the front page for yet another 10 hours.
This is how Python got big: Discuss cute issues endlessly, pretend to be a funny, benevolent community. But real issues like performance, correctness or security are never addressed, and people who dare to mention them are punished severely.
- GaryNumanVevo 2y agoThis is a very shallow understanding of the Python community. Of course there are a lot of "cute issue discussions" it's a language with a huge number of diverse participants. Performance and security are regularly discussed and patches are contributed via the mailing list. Python is _the_ language for ML right now because of the community.
- cmalexn 2y agoAgain, the ideal version that is removed from reality is presented. The mailing lists are non-operational for political reasons and because most competent people have left. Patches have never been contributed via the mailing lists. Python is the language for ML not because of the "community", which is an exploitative system where talkers who go on stage at a PyCon and never do anything get more money and worse, control who can earn money in the Python ecosystem. It is the language for ML because Python had a decent C-API and a lot of scientific software has been written early on.
- HexDecOctBin 2y agoThis is something I have been thinking about. Why was a lot of scientific software written in Python? Remember that Torch originally had a Lua frontend, and was only later turned into PyTorch, citing the same availability of scientific software. But considering that Lua has a far better C API than Python, why did those initial scientific/mathematical software use Python?
- dist-epoch 2y agoLua may have a better C API, but it's a small and not very useful language. Python C API is one of the better ones, it's extremely easy to connect C/C++ code to Python. Python is also extremely good at reshaping data, parsing files, scraping data and so on - the preprocessing part required by many scientific computations.
- masklinn 2y agoBecause the core Python team started working with scientific communities very early on, matrix-sig was created in 1995 and led to a bunch of conveniences from e.g. rich indexing (slices and implicit tuples in brackets) to matmul. `table.unpack` and having to convert rich keys to format rich keys into strings is not an upgrade. And Lua has a great API for calling into C, but for exposing lua APIs from C you’re basically writing bytecode for a stack VM in C. This is not very fun to expose large rich APIs. An other significant divergence is because Lua primarily targets embedding rather than freestanding, backwards compatibility is pretty far down the list of considerations, you’re not going to do a major lua upgrade once you’ve released your game. Python had one major compatibility break 5~15 years ago (depending when you switched) and teeth are still gnashing over it, Lua does that much every major version.
- rtpg 2y agoCorrectness? I feel like in the world of Javascript and Ruby (and hell, even Julia with some of its really gnarly bugs!), Python is pretty serious about having code do what it's supposed to do. There are surprises downstream, but a hell of a lot than other languages IMO