Ranter
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Comments
-
Python functions are objects. How are they not first class?
https://geeksforgeeks.org/first-cla...
You can even assign attributes to them.
Do you program python idiomatically? Python can be fairly quick when pushing the work to builtins. -
@zvyn lambdas dont matter as much when you can make a function/class generator. I always hated the official lambda though.
The one thing I miss in other languages are decorators. -
@zvyn I mixed up two topics. I meant that lambdas in python are just not that useful. Especially when you look at annomous functions in other languages
-
retnikt67745yI'm sorry, people who argue dynamic typing is bad can shove that idea up their arse. It just creates a different way of writing it. Neither is worse or better, it just depends which you're more familiar with.
-
@retnikt Automatic conversions can be difficult to debug and harmful. There is a reason that people mark single parameter functions in C++ as explicit. I honestly don't care either way, but dynamic type matching can be a source of bugs.
-
retnikt67745y@Demolishun coersions, **cough cough JavaScript**, I agree are bad. But python doesn't have them, nor do many other dynamic languages
-
Root797675yI dont like python either.
Mostly because of its community.
Then again JS as a language is great. It's the community that turns it into a mountain of infectious feces via NPM, etc.
Related Rants
Everyone talks about their hate of js but like python is honestly just as bad.
- shitty package manager,
* need to recreate python environments to keep workflows seperate as oppose to just mapping dependencies like in maven, npm, cargo, go-get
* Can't fix python version number to project I.e specify it in requirements
- dynamic typing that gets fixed with shitty duck typing too many times
- no first class functions
- limited lambda expressions
- def def def
- overly archaic error messages, rarely have I gotten a good error message and didn't have to dive into package code to figure it out
- people still use 2.7 ... Honestly I blame the difficulty of changing versions for this. It's just not trivial to even specify another python version
- inconsistent import system. When in module use . When outside don't.
- SLOW so SLOW
- BLOCKING making things concurrent has only recently got easier, but it still needs lots of work. Like it would be nice to do
runasync some_async_fcn()
Or just running asynchronous functions on the global scope will make it know to go to some default runtime. Or heck. Just let me run it like that...
- private methods aren't really private. They just hide them in intelisense but you can still override them....
I know my username is ironic :P
rant
sucks sometimes
python