

It’s just a “joke” about the method name.
It’s just a “joke” about the method name.
What happens if you use an out of range array subscript a[n]? Does that always return an option type?
It never returns an option type. This Index
interface happens to be actually noisy as implemented for some std types. Although you can implement it however you like for your own data types (including ones just wrapping the std ones). And we have checked access (example) and unchecked access (example) as methods.
It’s actually astonishing the lengths you’re taking to NOT learn anything, to the point of just imagining things about Rust that are supposedly done wrong compared to Ada.
Wrapping and Saturating are available as data types in std. Checked can’t be a (useful) data type as-is because it by definition changes the type of the return value of operations (Option<T>
instead of T
). But you can trivially add a noisy/signalling wrapper yourself if you wish to (basically doing checked ops and unwrapping all results). An example of something offering a noisy interface is a crate named noisy_float.
Rust supports wrapping, saturating, and checked operations, which allows you to precisely define the behavior you want from your math operations, and avoiding ever hitting an (unchecked) overflow.
VLC was never great in its own right.
If there is something historical to talk about, it’s how shit Windows was for both not providing basic functionality in a minimally serviceable media player. And worse, how it couldn’t get the basics of OS-ing right in being susceptible to DLL hell and other similar issues.
In other platforms where such inadequacies were never present, VLC never became a big deal, because…VLC was never great in its own right.
I don’t downvote people, but since you asked.
here has been a zlib in Ada for many years, doing its job quietly.
Who asked?
Speed comparable to the C version, probably not beating it, but not trailing by much in any case.
There is no one C version. The version being referred to is the original zlib, which happens to be the worst implementation of four possible zlib back-ends available in the flate2
crate. Besides the original zlib
and zlib-rs
, there is zlib-ng and cloudflare_zlib
, both of which are also (still) implemented in C.
So being comparable to the original zlib is hardly something to shout about. In fact, individual hobbyists have been beating that implementation just for fun for many years.
Rust is safer than C but less safe than Ada from what I can tell.
Rust (edited for clarity) looks to me to be about halfway between C and C++ in complexity, with a bunch of footguns removed, and using implicit move semantics (“borrowing”) more than C++ does, and the notorious borrow checker is simply the compiler making sure you don’t make RAII mistakes because of that.
That’s a lot of inaccurate waffling that could have been entirely written by an LLM, except it’s probably too wrong for it to have been done so.
Signal has been questionable for years. The way it’s been pushed hardly, and how Moxie is emeritus, while much more questionable people are in control, doesn’t fill one with confidence, and does ring some alarm bells. The relative proximity to some in the US establishment should be enough to do that. And the way some have been designating anyone who questions Signal as “Russian Propaganda” and immediately deflecting about how Telegram is bad, is even more curious.
Frankly, I would trust something like Wire more than Signal. And there are other options too.
Ideally, something with good security/privacy and is fully P2P would become popular. But those apps/networks never make it mainstream, which is unfortunate.
Check out the crate
indexmap
. Check its dependants too if you want to see how higher level abstractions can be built utilizing it.