January 27, 2021
On Wed, Jan 27, 2021 at 10:02:15PM +0000, sighoya via Digitalmars-d wrote:
> On Wednesday, 27 January 2021 at 18:18:51 UTC, Murilo wrote:
> > I think there should be one universal library that should contain modules for everything, that way all work would be done with only one library, that would make it more organized and maintainable since there would be only one library to take care of.
> 
> And the usage of only one language would also unify the power of maintenance and organization, but which language should be the one... :)

D of course! ;-)


T

-- 
There is no gravity. The earth sucks.
January 27, 2021
On Wednesday, 27 January 2021 at 22:47:56 UTC, H. S. Teoh wrote:
> Not to mention, one giant, monolithic library that tries to do everything [...] Adam Ruppe's arsd library is an excellent example.

fixed that for you

it is kind ironic, i have like 70 diverse modules, so it is kinda a "giant" library, but since I'm so strict on modular independence (even to the point of copy/pasting code in a few places) it is more like 50 "libraries" in one.

(I kinda hate the term library btw. A real world library is a big building with a bunch of random books. The librarian doesn't write all the books and most the books have nothing to do with each other. They are just made available there. That's the way I see the arsd lib - a "library" made up of a bunch of individual books from various sources. And my main job as librarian is to just ensure they stay in condition that people can check them out.

and of course I write like 2/3 of them myself too lol. But a surprising number of the modules in there actually aren't written by me at all.)


January 28, 2021
On Wed, Jan 27, 2021 at 11:38:28PM +0000, Adam D. Ruppe via Digitalmars-d wrote:
> On Wednesday, 27 January 2021 at 22:47:56 UTC, H. S. Teoh wrote:
> > Not to mention, one giant, monolithic library that tries to do everything [...] Adam Ruppe's arsd library is an excellent example.
> 
> fixed that for you

lol... fine, you got me there. :-D


> it is kind ironic, i have like 70 diverse modules, so it is kinda a "giant" library, but since I'm so strict on modular independence (even to the point of copy/pasting code in a few places) it is more like 50 "libraries" in one.

I think this is the key.

Over the years I've come to question the dogma of code reuse, esp. when it comes in the form of wanton dependencies, each of which in turn comes with its own set of dependencies, ad nauseaum.  It's basically the dependency hell edition of the good work vs great work conundrum. You can't argue that dependencies are bad, because it doesn't make sense to write everything from scratch yourself.  But each dependency begets more dependencies.  The result is that the simplest of tasks requires pulling in a disproportionate number of dependencies, 90% of which you don't actually need.  It's very telling that figuring out your way in this tangled web of dependencies is an NP-complete problem.  IMNSHO, solving NP-complete problems should be what your program *does* for the user, not what *you* need to do in order to be able to compile your program in the first place!

A *great* dependency is one that does *not* itself pull in more dependencies.  The best is that it's a self-contained unit that you can literally just copy into your source tree and it Just Works(tm) with no further fuss or muss.  No need for bloated heavyweight package managers that require gobs of disk space and RAM to solve NP-complete problems just so your program can be encumbered with an exponential number of dependencies.  Just drop the danged file into your workspace and start using it.  Nimble, flexible, and free of needless encumbrances.  The way it should be.


> (I kinda hate the term library btw. A real world library is a big building with a bunch of random books. The librarian doesn't write all the books and most the books have nothing to do with each other. They are just made available there. That's the way I see the arsd lib - a "library" made up of a bunch of individual books from various sources. And my main job as librarian is to just ensure they stay in condition that people can check them out.
[...]

That actually makes more sense than the way we usually use the word "library". :-D


T

-- 
I am a consultant. My job is to make your job redundant. -- Mr Tom
1 2 3 4 5
Next ›   Last »