Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
whytevuhuni
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
15 ms
·
211.
▲
by
whytevuhuni
2y ago
> They all have the same issue of there's simply too many code to vet. The problem is not the amount of code to vet, it's the amount of people who own it, and thus the amount of people I need to trust. In C, I use a "stand
212.
▲
by
whytevuhuni
2y ago
> There is Rust code I saw that was cluttered with "unsafe block" to an extend that I am a bit skeptical there was meaningful memory safety left.. There certainly is. But is it more than 1% of the Rust code out there? And let&#
213.
▲
by
whytevuhuni
2y ago
There is also: 3. A toolchain is stable if it has LTS releases and bugfixes are backported to them, regardless of how many changes each non-LTS release brings. But I'm not sure if people think about stability like that often. I wish th
214.
▲
by
whytevuhuni
2y ago
To me it seems like the goal was to be a C++ alternative, not C. I do half-agree though... I think somewhere inside Rust there is a hidden simpler language, with only a tiny subset of its features, but which still has lifetimes. I'd lo
215.
▲
by
whytevuhuni
2y ago
Rust: - Has the memory safety of Java - But is as fast as C/C++ The thing you have to pay to get that combination, is a LOT more time and frustration fighting the borrow checker, and getting things to compile. But for a kernel
216.
▲
by
whytevuhuni
2y ago
We will have to agree to disagree, then.
217.
▲
by
whytevuhuni
2y ago
I do depend on their features, and I see the value in doing that. For example, at $WORK I had to reimplement Apache's mod_rewrite.c in Rust, and I made it 100x faster for our particular use-case. I could've done that in C as well,
218.
▲
by
whytevuhuni
2y ago
Oh, I absolutely see it. My point was that it's necessary. How would you implement the same features Rust and C++ have, without garbage collection, but with simpler syntax?
219.
▲
by
whytevuhuni
2y ago
My experience (and I admit I may be too biased given years of prior C/C++ experience) is that Rust's syntax is a necessity, since no other mainstream languages besides C/C++ are as low-level as Rust. Most mainstream languages
220.
▲
by
whytevuhuni
2y ago
One of the main conclusions says: > which aims to make the kernel more secure [...] Contrary to the common belief, our study shows Rust only makes the kernel more "securable" but not fully secure due to unsafe usage is inevitab
221.
▲
by
whytevuhuni
2y ago
That is with regards to the points raised in the article, specifically, how hard it is to manage dependencies, and their security, when you have 300 of them instead of 12. For a developer, crates.io makes managing dependencies a breeze. For
222.
▲
by
whytevuhuni
2y ago
Could I get an example of this?
223.
▲
by
whytevuhuni
2y ago
I've been of the same opinion for a long time... if an operating system was to provide its lowest-level tools in Rust (not just coreutils, but everything a minimal Debian is comprised of), Cargo and the crates.io ecosystem would likely
224.
▲
by
whytevuhuni
2y ago
I once saw an .ini for a log parser: [Alarm] Name=Nginx Errors Pattern="[error] <pid>#<tid>: <message>" The thing worked. Without any errors. And yet it took: Pattern="[error] <pid&
225.
▲
by
whytevuhuni
2y ago
> I mean, how else would you call the arguments of > splitAt :: Eq a => a -> [a] -> [[a]] Those don't seem to be names of parameters, but rather of types. It's missing parameter names entirely. I spent a good 2 minu
226.
▲
by
whytevuhuni
2y ago
Most usages of `unsafe` are necessary because of FFI calls into code written in C, into syscalls, into hardware memory-mapped regions, or other things outside of Rust's control. Without this ability, Rust wouldn't be able to call
227.
▲
by
whytevuhuni
2y ago
Due to the lack of ABI stability, the resulting dynamic library is tied to the exact binary hash of the Rust compiler (which includes the dependencies rustc was built from). Those dynamic libraries will also not remain ABI stable if their c
228.
▲
by
whytevuhuni
2y ago
This is missing a few useful ones, like Box<str>, Arc<str>, Cow<'a, str>, SmallVec<u8>, transmuted newtype references like &UserId, and of course the string type you implemented yourself because the previous
229.
▲
by
whytevuhuni
2y ago
I agree with this, but I don't think dynamic types is the only solution. Something like Roc[0] strikes a better balance: it gives you a flag for development, and when enabled, all compilation errors become warnings. The compiler substi
230.
▲
by
whytevuhuni
3y ago
Is LLM inference mathematically reversible? If I say "42", can I drive that backwards through an LLM to find a potential question that would result in that answer?
231.
▲
by
whytevuhuni
3y ago
I'd recommend taking inspiration from Nim, which uses some really clever metaprogramming techniques to allow for very terse representation of code. Idiomatic Python is the way it is due to having really good defaults, but in order to a
232.
▲
by
whytevuhuni
3y ago
Not the parent, but my own opinion is that if a C/C++ passion project becomes successful, it burdens other people with yet another source of security vulnerabilities. This is even more so for small projects that didn't have the de
233.
▲
by
whytevuhuni
3y ago
Let's say you are blue-pilled and what you see as your eth0 interface is actually a virtual interface controlled by the rootkit. In that case, where the redirection happened is no longer something you would be able to tell, right?
234.
▲
by
whytevuhuni
3y ago
Could this be a blue pill attack? A vulnerability in the xmpp server exploited to inject a rootkit, which then hides itself inside the kernel? Or creates network/pid namespaces and puts you in them, while leaving the mitm server in the
235.
▲
by
whytevuhuni
3y ago
As the original article noted, one of the biggest problems of "thread per core" is the name of it, because it confuses people. It does not mean "one thread per one core" in the literal sense of the word, but rather a spe
236.
▲
by
whytevuhuni
3y ago
Would've really liked to see monoio and glommio in here (thread-per-core with io-uring). I've heard people say io-uring offers improvements in IO-based workloads, but I haven't seen what that truly means in the context of Rus