4 ms·
It’s also horrible because each project ends up reinventing their own abstractions or solutions for dealing with common things. Destroys a lot of opportunity f
by BobbyTables2 10mo ago
It’s also horrible because each project ends up reinventing their own abstractions or solutions for dealing with common things.
Destroys a lot of opportunity for code reuse / integration. Especially within a company.
Alternatively their code base remains a steaming pile of crap riddled with vulnerabilities.
- delaminator 10mo agoThat's how everything works. You start off with some atomics and build up from there. Things that people like get standardized, And before you know what's going on it's called stdlib. It took a decade between Stroustrup's 1985 book "The C++ Programming Language" and the STL proposed and accepted by the ANSI/ISO committee in 1994.
- BobbyTables2 10mo agoYeah but those standard libraries are still inadequate 30 years later. Imagine a hypothetical Python scenario where every application and library had their own list implementations with differently named methods and behavior. Yet C is exactly that. Is it not common place to log messages to a file? How many applications and code bases DO NOT use syslog(). And if one wants to use syslog, then assert failures won’t get logged there… Sure, with a custom assertion and logging framework one can get reasonable behavior. But it’s not automatic. Hence, a Tower of Babel …
- delaminator 10mo agoThat's Linux C you're talking about. Many, many, many C codebases don't use syslog.
- BobbyTables2 10mo agoExactly! At least Python has a standardized “logging” module where applications can control the format and destination. But with the standard C library, there is little common ground. Solutions to the same basic problems are constantly reinvented - differently.