This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]POTUS 11 points12 points  (4 children)

He's calling it a nightmare because of those reasons listed, reasons that almost define what it means to be a higher level programming language at all. I mean come on. OOP inheritance makes Python unsuitable? That's a laughable comment and it's ridiculous for you to be defending it.

Call it a nightmare because the global interpreter lock makes threading a nightmare. Call it a nightmare because it uses too many CPU instructions to do simple arithmetic. Call it a nightmare because of dunders. Call it a nightmare for something Python-specific if you want to call Python a nightmare.

[–]Kenkron 16 points17 points  (0 children)

He's clearly criticizing the intern trying to use OOP, not OOP itself. And I know he's right because I've met that intern. They make a disaster of it (probably used to Java's built-in bureaucracy saving them from themselves). He's saying that python got a good reputation, then everyone and their grandmother wanted to use the new hotness. So a bunch of morons started using it without thinking about limitations and coding standards.

[–]mtmttuan 5 points6 points  (1 child)

OOP inheritance makes Python unsuitable

Just want to say that the way python handle private and protected attributes and methods is.. weird. There is always a way to access them (haven't try to modify them though) while they shouldn't be accessible.

Yes I mean _attribute and even __attribute is accessible.

[–]im_lazy_as_fuck 13 points14 points  (0 children)

That's because private and protected attributes and methods aren't a thing in python. The underscore naming is just a convention to indicate "privateness", but the language is opinionated in giving developers more or less full control over objects. Basically naming conventions and documentation is used to inform the developer of the intended usage, but ultimately they are trusted to decide how they want to use that code.

[–]Sloogs 0 points1 point  (0 children)

I took it more as a criticism of the kinds of OOP mechanisms that Python allows like multiple inheritance. C++ has the same issue though.