logoalt Hacker News

bnchrchyesterday at 11:29 PM5 repliesview on HN

Python needs to be in less places not more.

I believe Python has done more harm than good to the industry.

Its by nature very inefficient, it leads you in the direction to some very poor abstractions (inheritance, monkey patching, mixins etc) and as a result code that is very prone to subtle bugs and issues.

It deserves all the love it gets as an approachable language, but it deserves a lot more flack for everything else.


Replies

skeledrewtoday at 1:37 AM

Big disagree. I've been following this project since it's early days, and have made a few projects based on it. I haven't been bitten by any "inefficiencies" in such a way that'd make me give up the language. And at this very moment I'm working on what's essentially a Python REPL that can build and return Flet controls (as well as the traditional string result), making writing and running adhoc native "applets" fully on mobile a possibility (haven't seen anything else that does this).

show 1 reply
unsungNoveltytoday at 4:39 AM

But when it comes to GUI toolkits, which of them are efficient? React Native, Tauri, Electron. I don't see a efficient one other than Native toolkits. Even they have their own problems.

PS: Loved your website's (https://ben.church/) messaging for different audiences. Especially the "My Wife" one. Gave me a good laugh. :)

IshKebabtoday at 6:46 AM

I agree. They got some things right - the indentation based syntax is quite approachable even if it breaks down quite quickly (e.g. `lambda`), and infinite precision integers are fantastic.

But it's soooooo slow, tooling was abysmal until uv came on the scene (which some people still don't use), it has a ton of old janky APIs, and features like implicit bool coercion.

I wish there was a popular scripting language that was good. Modern robust semantics, infinite precision integers, static typing, good tooling, easy to embed. As far as I can tell it doesn't exist. Roto is the closest I've seen but it's moderately domain specific and doesn't have arbitrary precision integers.