3 ms·
Is it plausible that the libraries are so big? I mean, for example, NodeJS is in the order of 100mb and contains the whole v8 engine. The Gmail app size has to
by seizethecheese 10mo ago
Is it plausible that the libraries are so big? I mean, for example, NodeJS is in the order of 100mb and contains the whole v8 engine.
The Gmail app size has to be assets, right?
- reactordev 10mo agoStatic linking will do that. Imagine you have 400mb of binary objects your app depends on. Libraries your company uses for app analytics, SSO, 2FA, Corporate service bus api, etc. You statically link all those for your 50mb Swift UI app and bam, you’re in the 700mb range.
- chasil 10mo agoThe use of Go will definitely do that, as it prefers to statically link everything. https://go.dev/wiki/Mobile https://go.dev/wiki/Mobile If we had an entire POSIX OS built with Go, then we would be back to statically-linked UNIX prior to BSD. https://www.freecodecamp.org/news/golang-statically-and-dynamically-linked-go-binaries/ https://www.freecodecamp.org/news/golang-statically-and-dyna...
- reactordev 10mo agocan you build a Swift UI in go?
- chasil 10mo agoThere is a single mention of Swift on the developer page that I posted. "Note that you can also invoke GoHelloGreetings from Swift by importing Hello." @import Hello // ... let msg = Hello.GoHelloGreetings("gopher")
- reactordev 10mo agoOh lord…
- tormeh 10mo agoThat's a lot of code, though. I can't imagine common libraries so big. The Linux kernel is less than 100mb.
- lxgr 10mo agoThe neat thing about code is that there's no upper limit on how inefficient one can get.
- HPsquared 10mo agoIt's literally "work expands to fill the available time" (s/time/cycles and memory/)
- yobbo 10mo agoThat would be the source code. The default debian kernel is around 12 MB but it could be much smaller. It doesn't bundle full random external libraries compiled with debugging symbols and "whatever other stuff".
- tgsovlerkhgsel 10mo agoYou'd be surprised what ends up dragged into where when you have a build system that makes it easy. Just look at the npm.js mess (and what kind of things ended up depending on what kind of other thing) if you want an example.