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.

@Feufochmar @hugoestr

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).


@Feufochmar @hugoestr

I grow to understand what people call “functional programming” is in fact everything that is well thought, with decades of groundings.

Something is clear: the term functional programming, is not enough to describe the patterns, and practices that are less mainstream.

Whereas OOP is whatever mainstream PL do.

Do we really need to power up our PLs with metaclasses to be able to do DSLs? That is what Python does with the so-called declarative syntax.

· · Web · 2 · 0 · 0

@Feufochmar @hugoestr

> 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

+ 💯 that is what I am trying to explain to my boss. We keep staying in a mainstream comfort zone (ORM, Python, JavaScript, Docker, k8s, clouds etc…) without considering, and even less trying alternatives. Cargo-culting whatever news.ycombinator.com zealots toot and boost because it brings their way more cash.

@amirouche @hugoestr Sadly, from a manager point of view, it's preferable to stay in a mainstream comfort zone, as it's easier and cheaper to find people to maintain the code with widespread technologies, than to find people to maintain niche technologies.
However, it would be an error to not have someone to do technological watch for the future projects, or be future-proof for the current projects, especially as the block you use become unmaintained over time.

@Feufochmar @hugoestr

> it brings their way more cash.

Following the zealots bring even more cash to the zealots.

@Feufochmar @hugoestr

My scheme code is much bigger than a couple of hundreds of lines of code, and I use no niche algorithms.

@amirouche @Feufochmar Going off the mainstream path can be the business advantage that a small company needs

@Feufochmar @amirouche Mainstream OOP and probably mainstream functional are usually a procedural programming that does hurried attempt to adopt their practices.

A well thought out OOP system can give a huge productivity advantage to a small team. When you see one working well, it feels like magic.

I used to think that this was because OOP evangelists did a poor job of explaining what OOP was about. I still think there was a lost opportunity there.

Functional has many books and courses that teaches the principles well. Yet I am seeing the same mismatch between theory and practice.

Sign in to participate in the conversation

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!