Continuing the discussion from A ZIP API in the browser?:
I don’t think having a large “standard library” built into the language spec and language VMs is a worthwhile or interesting goal. Different environments will want different libraries available, especially given the different constraints. For example, downloading and loading code has almost negligible cost server-side, where startup time is unimportant, whereas it has a large cost client-side. Other cases are resource-constrained embedded devices versus the relative plenitude of our phones and desktops; having to ship a ZIP API (and a crypto API, and a URL-resolution API, and a safe-HTML-encoding library, and…) to such devices is prohibitive.
Saying that a ZIP API is a language feature seems, on its face, to be pretty weird. Maybe it’s useful in both Node and the browser, in which case both Node and the browser can implement the ZIP API spec. But ZIP is on a completely different level than Object
, Promise
, Map
, GeneratorFunction
, or even RegExp
.