> When you maintain a large code base for several years, you must think with abstractions, and not just at a class-level, but at a component-level.
You are grand-fathering OOP.
Everything you wrote apply to what I know about Scheme code.
> Object-oriented programming is rarely overkill, unless your code stays under a few hundreds lines of code
Easy boy, look at my GitHub before speaking of a few hundred lines of code, please?
> or if you just write throwaway code.
You do not have enough experience with working on code that live outside the bubble of privateer company.
🤔 I am not sure what you are saying?
> code base reach a certain size
As if it was easy with OOP
> abstract the data you manipulate into datastructures
who said otherwise?
> the code is easier to maintain
hopefully.
> some functions are just implementation details
who said otherwise?
> What I have described here is what object-oriented programming is about [...]
zealot talk? NB: What I know does it better than anything open or closed source I have read.
My scheme code is much bigger than a couple of hundreds of lines of code, and I use no niche algorithms.
> it brings their way more cash.
Following the zealots bring even more cash to the zealots.
hehe
Smell by itself is biased, something that smells good to me, might smell bad to you.
But what we do with computers, at least, the code should not be about a personal “preference”, a “liking” such as how we choose ice-cream. It must have groundings, clues, and proofs.
I lol, and sob people that explain their software architecture with: to each their own.
Here is the cheap idea I hold on my back: think before you code.
> 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.
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.
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).
@hugoestr thanks a lot !
@ButterflyOfFire pouet et repouet
@ButterflyOfFire Tu recommendes quoi comme clef 5G ?
Ul stated their goal clearly and frankly to earthians, without fuss nor muss, the link of the underground bullet train is going marvelous. Gravity does not a dangerous level for the whole structure to collapse, and still allow both human, and nature to prosper (even if limited, read further for instructions) in a beautiful set. The Earth ring was named after its inventor, the greatest Ul, hence bullet train shall be known as Ul'trainat Bullet Train (UBT), or just: Ul'trainat.
Pitch? Slogan? As a chimera through time and space the team pressed simultaneously, like one human, each their own keyboard until a breeze flight shove through the misselium to come back to Earth (as near as misselium permits).
It is political too.
@jonny There is too much work, and not enough working software.
Cyborg wanna be; Scheme, Python, JavaScript software engineer interested in #nlproc, #linguistics, #opendata, and #mezangelle. he / his.