I like functional programming. Yet I am afraid that when the community dogmatically jumps into it as functional = good, OOP bad we are not helping functional or the industry at large.
Doing this closes the world of possibilities. Perhaps using logical programming makes solving a problem easier. But we won't even consider it if we don't even know that it exists
@hugoestr Especially when object-oriented programming and functional programming are solutions to different problems, and are complementary.
Object-oriented programming is about structuration of data and code and separation of concerns. It answers the "where ?" question.
Functional programming is about how to write functions and methods. It answers the "how ?" question.
I have a very hard time to understand in what situations OOP such as found in Python (because that is the only PL with OOP I practice); how OOP is useful?
I am not a very knowledgeable about functional programming, tho. Furthermore, I do not think I am a functional fanboy.
OOP is overkill. Using functions is enough.
No need to into more complex abstraction such as whatever Haskell does (some of the things I understand are interesting, and useful).
@amirouche @hugoestr Scheme was developped to explore and implement the actor model, which is also the basis of object-oriented programming (objects == actors, methods == messages). The principles of object-oriented programming can be applied more broadly than just the object-oriented languages, and can be applied to Scheme (having user-defined types and user-defined functions are the minimal requirements to do object-oriented programming, and most languages used today can do that).
Furthermore, unlike a language like C, Scheme gives you the primitives to write a meta-object protocol, so you can implement the primitives of the object-oriented languages at a library level (though it's usually overkill when you can use modules to limit the visibility of functions).
The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!