Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
kaba0
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
19 ms
·
181.
▲
by
kaba0
2y ago
> Maven is virtually infinite extensibility via plugins Losing the only task of a build tool, caching and parallelization. No, the problem is that maven doesn’t rebuild everything. It is actually quite common in code bases that I had t
182.
▲
by
kaba0
2y ago
Almost every battery is done this way, and literally every repair shop can easily replace them. Maybe find something actually worth getting angry over.
183.
▲
by
kaba0
2y ago
> Why did they have to use some super strong glue for their batteries when a tape or a set of screws did the job in the past Because these are soft batteries, unlike the previous generation batteries? Like, again, there are way more thou
184.
▲
by
kaba0
2y ago
Steam is not publicly traded, though. Apple can’t really say no to “more profit”, otherwise they will be immediately made to resign.
185.
▲
by
kaba0
2y ago
With all due respect, that’s a blatant misunderstanding of gradle (though gradle’s documentation not being clear enough, giving to the spread of this misunderstanding is a fair criticism). Gradle is not too powerful, it builds a build graph
186.
▲
by
kaba0
2y ago
Maven (and pretty much every other build tool with the exception of bazel) is not capable enough for such a complex build as is required for android, though. E.g. maven can often “lose” that something requires a rebuild, and only clean buil
187.
▲
by
kaba0
2y ago
> Also, hard to say without source code but there is a high chance even more efficient methods like Protobuf create a lot of Java objects and that kills cache locality I don’t think this can be claimed that easily without more info, gene
188.
▲
by
kaba0
2y ago
So instead of battle tested, actually feature-complete, ready-made solutions, they output some hack that barely works even in their limited use case, and took several times more time than doing it properly in an “enterprise” code base.
189.
▲
by
kaba0
2y ago
Make is hardly a build system
190.
▲
by
kaba0
2y ago
Make leaves the actual hard problem behind — setting up the environment correctly. A README file is much more useful.
191.
▲
by
kaba0
2y ago
Software with small scopes can be finished. It doesn’t sound too complicated to just push a new bug fix each year, by anyone. If anything, make is probably a significantly more complex codebase due to all the hacks it accumulated over the y
192.
▲
by
kaba0
2y ago
Gradle and Bazel are absolutely general purpose build tools that are very widely used in industry. As a smaller contender, my personal favorite is the Mill build tool (written in Scala), that is basically what a build tool should be, it’s a
193.
▲
by
kaba0
2y ago
So how do you build any project, which have countless dependencies that all have to be installed?
194.
▲
by
kaba0
2y ago
You have to handle dependencies either way to build a project - what’s one more tiny executable? This criticism might make sense for some non-vim editor because you might have to ssh into a remote location where you can’t install stuff. But
195.
▲
by
kaba0
2y ago
There are projects that generate files, depend on multiple languages, etc. If you push the job of a build tool to the compiler infrastructure, then why even have a “build tool” in the first place? Make is simply anemic for anything remotely
196.
▲
by
kaba0
2y ago
None of them are simple, they are chock full of hacks upon hacks, “fixing” their own idiocies, and by extension, none of them are doing their one thing well. Especially bash scripts, they should be left behind..
197.
▲
by
kaba0
2y ago
I can count on one hand the number of times a simple script or make worked out of the box. Sure, part of the reason is dependencies, but then I might as well use a build tool that is actually doing what a build tool should. Makefiles/b
198.
▲
by
kaba0
2y ago
I guess we really have to add whether it is soft or hard realtime we are talking about. The former can be done in userspace (e.g. video games), the latter probably need a custom OS (I don’t think rt-linux is good for actual hard realtime st
199.
▲
by
kaba0
2y ago
You (plural) seem to know a great deal about build systems, so I figured I would ask - what’s your opinion about Mill? It’s a not so well known build tool written in scala, but I find its underlying primitives are absolutely on point. For t
200.
▲
by
kaba0
2y ago
I did write ‘simple’, but obviously meant simpleR. A performant runtime will still require considerable complexity. Also, C# doesn’t underperform, I never said that — partially as the whole platform has access to lower level optimizations t
201.
▲
by
kaba0
2y ago
What are you even talking about? C# has a famously simplistic GC which is basically one big, 1000 lines file. C# has very different tradeoffs compared to java, it pushes complexity to the user, making their runtime simple. Java does the rev
202.
▲
by
kaba0
2y ago
I don’t think it’s impossible with proper caches to smaller dimension versions (that supposedly Apple already generates/has access to - like they are doing a bunch of processing, like object recognition, etc).
203.
▲
by
kaba0
2y ago
Or you know, the couple of languages people speak that are not using ASCII…
204.
▲
by
kaba0
2y ago
If there are identity having classes (reference/pointer) that may be mutable, and value types that are always immutable, then I think it can be an “implementation detail”, part of the type, not changing semantics. If you can’t change a
205.
▲
by
kaba0
2y ago
> A more interesting one comes up with GC too; if you're freeing all the time, everyone compresses their swap these days, which means zeroing the freed allocations is suddenly worth it because it compresses so much better. Moving GC
206.
▲
by
kaba0
2y ago
Maybe he should then read a book on garbage collectors that all start with ref counting.. Also, is it “pause execution and clean up” together? As ref counting obviously has to clean up, that’s the whole point - and it actually does so by bl
207.
▲
by
kaba0
2y ago
Since basically every single type system has escape hatches (casts), yes, I would say completeness is more important than soundness.
208.
▲
by
kaba0
2y ago
For serial workloads it’s very very hard to scale by hardware, though. CPUs aren’t getting 2x faster as they used to. Also, what is “messing with the JVM”? That’s like one of the most battle tested technologies out there, right next to the
209.
▲
by
kaba0
2y ago
> garbage collection Reference counting is garbage collection, and it performs significantly worse from a throughput perspective than tracing GC, which is possibly the most common metric for web server type workloads. It really is no
210.
▲
by
kaba0
2y ago
I don’t really see how swift comes into the picture, besides SuLong being a thing (running LLVM bitcode). Native binary was meant as a compile target in the previous comment, I believe, not as an input . Graal can do both, but as a targe
More ›