Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
whytevuhuni
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
5 ms
·
31.
▲
by
whytevuhuni
4mo ago
The list of features and anti-features looks amazing, that's just want I want from a simple systems language. However, the list of examples has... basically nothing. So it hasn't really proved that its set of features is enough to
32.
▲
by
whytevuhuni
4mo ago
I'm a really big fan of Rust, but I have to challenge this, GP was clearly talking about the complexity of the language itself, and that one is high. Extra features and extra static checking add complexity. Extra complexity in the la
33.
▲
by
whytevuhuni
5mo ago
Și
34.
▲
by
whytevuhuni
5mo ago
Moral of the story: A truly secure website would be a continuously morphing one where an LLM keeps rewriting and redeploying large parts of its code every minute, so that no attacker can keep up.
35.
▲
by
whytevuhuni
5mo ago
Very surprised to hear that, since editions are exactly the kind of mechanism Rust is using to make sure software will keep working unchanged for decades. The Rust compiler can build a 2024 edition application which depends on a 2015 editio
36.
▲
by
whytevuhuni
6mo ago
> Then add in the fact that a change to history gets rippled down the descendent commits. This sounds interesting. Could you go into a bit more detail? I have 3 branches off of a single commit, update that commit, and all branches automa
37.
▲
by
whytevuhuni
6mo ago
The only thing this leads to is that you'll have hundreds of vendored dependencies, with a combined size impossible to audit yourself. But if you somehow do manage that, then you'll soon have hundreds of outdated vendored depend
38.
▲
by
whytevuhuni
6mo ago
Maybe this was a genius move made precisely to be ambiguous on whether it was April Fools or not... so that the author can later read the room and clarify whether it was or was not April Fools, without much repercussion either way.
39.
▲
by
whytevuhuni
7mo ago
That's not much different than other distros, because the way auto-update usually works, is it can't use root permissions or the system package manager (in any distro), so it has to install the newer version in $HOME. Once the u
40.
▲
by
whytevuhuni
7mo ago
Interesting, although I checked and on NixOS the binary is just 29MB. It was statically linked, with just libc left as dynamic. I think 29MB is still huge for a terminal text editor, but nevertheless not "hundreds".
41.
▲
by
whytevuhuni
8mo ago
Will it be okay though? i32 to u64 has two ways to convert it: i32 -> u32 -> u64 i32 -> i64 -> u64 This matters with negative numbers, where the first one pads with 32 bits of 0, the second one pads it with 32 bits
42.
▲
by
whytevuhuni
9mo ago
Not quite, because depending on the compiler implementation / memory model, other things can also lead to UB, and thus be unsafe, e.g.: * data races in a multi-threaded program * type-casting to the wrong type (e.g. via unions) with co
43.
▲
by
whytevuhuni
10mo ago
Rust is not mentioned in the article. From HN's guidelines: > Otherwise please use the original title, unless it is misleading or linkbait; don't editorialize.
44.
▲
by
whytevuhuni
10mo ago
No mention of Guix. Has its situation improved? I remember waiting almost an hour on “guix pull” to catch up with its git repo on a fresh install.
45.
▲
by
whytevuhuni
10mo ago
> What's the really simple K8s? I think K8s couples two concepts: the declarative-style cluster management, and infrastructure + container orchestration. Keep CRDs, remove everything else, and implement the business-specific stuff o
46.
▲
by
whytevuhuni
10mo ago
Right. The &pin, &own, and &uninit in the article (or rather everything except & and &mut in that table) do not exist in Rust. I have seen &pin being proposed recently [1], first time I'm seeing the others. [1]
47.
▲
by
whytevuhuni
10mo ago
I see, most likely thread-safety then. Rust will prevent accessing data shared between threads unless you first lock a mutex, use an atomic, etc. Or rather, it gives abstractions so that higher-level types in stdlib and other libraries can
48.
▲
by
whytevuhuni
10mo ago
Are you sure you mean concurrency safety, and not thread safety? I think Rust's concurrency safety (e.g. async on a single thread) is mostly granted by the Pin trait [1], and the async code-gen making sure lifetimes make sense over .aw
49.
▲
by
whytevuhuni
10mo ago
This is the 3rd copy of a flagged comment within a single minute.
50.
▲
by
whytevuhuni
10mo ago
> The damage from the correction that comes later will do so much harm. Which part here is misinformation? Do you know something we, or the author, does not? I'm quite curious what that might be.
51.
▲
by
whytevuhuni
10mo ago
In Rust you typically use the "log" crate, which also has a global logger instance [0]. There is also "tracing" which uses thread local storage. As another comment said, global state is allowed. It just has to be proven
52.
▲
by
whytevuhuni
10mo ago
I've been having an absolutely great time with Rust's bumpalo crate, which works very similarly. The lifetime protection still works great, and it's actually a lot more permissive than normal Rust, since it's the same li
53.
▲
by
whytevuhuni
10mo ago
> Because they don't use async inside. But they use I/O inside, and we arrive at this issue: I'm writing async, and I need to call std::fs::read. I can't, because it blocks the thread; I could use spawn_blocking but t
54.
▲
by
whytevuhuni
10mo ago
But that's the thing, idiomatic Rust sync code almost never passes around handles, even when they need to do I/O. You might be different, and you might start doing that in your code, but almost none of either std or 3rd party libr
55.
▲
by
whytevuhuni
10mo ago
Here's a problem with that: Cannot start a runtime from within a runtime. This happens because a function (like `block_on`) attempted to block the current thread while the thread is being used to drive asynchronous tasks. htt
56.
▲
by
whytevuhuni
11mo ago
> Seemingly, there is an assumption that software written in Rust is inherently better Yes. Both Rust and its standard library have features that make programs be less likely to have problems. > than any other No. It's just bette
57.
▲
by
whytevuhuni
11mo ago
That's a very unusual take. Rust (in its 1.0 form) was precisely made to replace C++, since the goal was to replace as much of Firefox's code as possible with it. Also, if you cannot afford a GC, then languages like Ada and D are
58.
▲
by
whytevuhuni
11mo ago
How does this SPARK/non-SPARK mix compare to Rust's safe/unsafe mix though, in terms of both safety and pragmatism for larger non-interplanetary software? Like, for creating a CLI tool, a GUI application, a game, a web server
59.
▲
by
whytevuhuni
11mo ago
I'm a Rust fanatic but probably not an activist. I am curious about Ada / SPARK though. From what I've seen, taking on SPARK means taking on full verification, close to what seL4 is doing. Doesn't that make it extremely
60.
▲
by
whytevuhuni
11mo ago
A C with lifetimes would be nice, I agree. Would be awesome if someone did a study to see if it's actually achievable... Cyclone's approach was certainly not enough, and I think some sort of generics or a Hindley-Milner type syste
More ›