5 ms·
> Node modules not working in the browser without translation was the original sin that kicked the whole nightmare off. Node modules are just a reaction to the
by jdminhbg 4y ago
> Node modules not working in the browser without translation was the original sin that kicked the whole nightmare off.
Node modules are just a reaction to the actual original sin, which is building a popular language that essentially had no standard library. I suppose that's the kind of thing that will happen when you have to build one in a matter of weeks, but everything from webpack to left_pad is essentially the fault of the language not having a standard library.
- krapp 4y agoThe language has a standard library fit for its intended purpose - scripting the DOM. Moving javascript out of the browser and trying to use it as a one-size-fits-all replacement for everything from systems to application programming, and every language from C++ to Java, is the original sin. Stop complaining because Brendan Eich's toy scripting language isn't a good replacement for things it was never meant to be used for. A screwdriver isn't a good hammer, either.
- jdminhbg 4y agoGiven how many front-end packages are on NPM, it's obviously not the case that the libraries provided were sufficient for scripting the DOM. Just take left_pad itself, that's something the language should provide, and it's an issue that it ended up being a point of failure. I have no particular love for using JS as a language to power everything from IoT devices to web servers, but it doesn't really matter how I feel about it. It's not going anywhere.
- krapp 4y ago>Just take left_pad itself, that's something the language should provide, and it's an issue that it ended up being a point of failure. Why should the language provide that? What other languages provide an equivalent to that? left_pad is intended for formatting text within a terminal, not a website. There's no need for it within the context of a website, because HTML has tables, CSS and other elements for that.
- deergomoo 4y ago> What other languages provide an equivalent to that? https://www.php.net/manual/en/function.str-pad.php https://www.php.net/manual/en/function.str-pad.php https://docs.ruby-lang.org/en/3.1/String.html https://docs.ruby-lang.org/en/3.1/String.html https://developer.apple.com/documentation/foundation/nsstring/1416395-padding https://developer.apple.com/documentation/foundation/nsstrin... > left_pad is intended for formatting text within a terminal, not a website. There's no need for it within the context of a website This is just not correct. It’s for padding a string with any character, for example adding leading zeroes to a number for display purposes. There are plenty of reasons to want to do that in a browser.
- unsupp0rted 4y agoIs there an NPM module that serves as a standard library? My code is a combo of lodash bits, datefns, helper regexes I’ve curated over the years, etc Is there a standard library-like package that you import on most projects?