Hacker Newsnew | past | comments | ask | show | jobs | submit | flavious's commentslogin

Yes, that would be amazing, full classes of approaches to problem solving would be unlocked at once and we wouldn't have to invent new languages, DSLs, transpilers, etc, but just leverage zig.


Contracts are actually quite necessary for modularity. In OOP we have data types (interfaces, classes).

As long as other paradigms provide contracts/abstractions, modularity can be achieved there also.

Faked modularity doesn't count. Leaky abstractions neither.


I'm not your goto java guy, but the module system of java and how modules can provide implementations for interfaces is really great.


Over-abstraction also has a non-negligeable cost.


Over-abstraction usually increases entropy, so your code size is bigger.


Fred should learn how to squeeze in his refactorings into other, related tickets. And to learn how to argue about why an user story is more points worth, without explicitly saying the R word.


And how does the team feel about it?


They also want to get rid of the old code, but they're not removing it. One of them also has a tendency to interesting structural solutions, though he tends to do it more by adding them than by rewriting what was already there, which has the advantage that it doesn't disrupt the old code that others are working on, and the corresponding disadvantage that the old code survives.


Sounds like the effects of temporal coupling, or "settism and gettism", or other principles, which are violated. People are blinded nowaways too much by SOLID, and forget about the remaining 20 principles.


My rule scales with the scope of the dependency:

"If you think that creating a wrapper around the library is too expensive, then the dependency is not worth having".


Not questioning your decision at all, but can you explain the whole thought process which led you to the conclusion that it is a better fit?


Linux user for 15+ years, Slack, now Arch in the past 10 years.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: