you are viewing a single comment's thread.

view the rest of the comments →

[–]TaseAFeminist4Jesus 1 insightful - 1 fun1 insightful - 0 fun2 insightful - 1 fun -  (4 children)

Yeah, the addition of "class" was very unwelcome, IMO. That C++ / Java / C#-style OOP has been a huge detour in software engineering.

It's telling that if you switch to a really powerful language, like a Lisp derivative, any need for that "Gang of Four" crap just goes away.

JavaScript's original, protoype-based inheritance was OK. I think it's a little unfair to even call it OOP. When I say "OOP," I am referring to the "class" keyword and all the horseshit you see in C++ / Java / C#.

[–][deleted] 1 insightful - 1 fun1 insightful - 0 fun2 insightful - 1 fun -  (3 children)

When I say "OOP," I am referring to the "class" keyword and all the horseshit you see in C++ / Java / C.

C doesn't even have classes, it just has structs, it isn't really the same paradigm as Java/C++. I think this approach is implemented quite well in the Rust language.

[–]TaseAFeminist4Jesus 1 insightful - 1 fun1 insightful - 0 fun2 insightful - 1 fun -  (2 children)

Sorry, I meant C#.

[–][deleted] 1 insightful - 1 fun1 insightful - 0 fun2 insightful - 1 fun -  (1 child)

ahh, yeah, that makes sense

[–]TaseAFeminist4Jesus 1 insightful - 1 fun1 insightful - 0 fun2 insightful - 1 fun -  (0 children)

Plain old C is based.

I need to look into Rust.