Releasing a v1 would be misleading anyway, even if the language itself is ready for it (it isn't)..... because they use zig in their standard library 😉
I don't know what is it with new rustaceans and binary size, but many of them seem to be incessant on wasting time uselessly optimizing it, usually without actually understanding what they're doing, without gaining any relevant benefit, and possibly even causing relevant harm (e.g. degrading run-time performance for no good reason).
Fake info. It would be fake too if you made the opposite claim. Because such info is simply not available.
VLC being an MPlayer clone with better branding has been a running half-joke for decades.
The latest released version of VLC is not compatible with ffmpeg versions > 4.4 🤗. Some distros have actually considered dropping the package for that reason. Maybe some did, I don't know. But if the situation doesn't change, some definitely will.
And VLC 4, which those who still care for some reason have been waiting for it to be released for years, is centered around libplacebo, a library that was factored out of mpv 😎 .
I'm not emotionally charged against VLC or anything. In fact, I occasionally use it on Android. But what's stated above is just facts.
There is an example in the repository showcasing interop with Rust. But I didn't find it compelling enough for people to like. It felt a bit too complex. But maybe the complexity is inherent. I don't know.
As someone who doesn't know scripting languages well, what does make the snippet you posted particularly Ruby-ish?
Reading the guide, it felt like a relatively small consistent scripting language, with some Rustic touches. But I probably missed the touches from other languages I don't know.
But then, Rust itself took inspiration from many other languages, including Ruby itself. So, maybe everyone is taking from (or mimicking if you will) everyone.
BTW, that last part can be written as:
# from iterator import each, to_list
» square -> each (2,4,6,8) -> to_list
➝ [4, 16, 36, 64]
which maybe mimics some other functional or functional-influenced language(s).
I can't tell if we are miscommunicating here, or if my leg is being pulled.
You are not aware of staunchly anti-OOP (object oriented programming) people existing? Anti-OOP is a majority position now (always was in my circles). And the holdout proponents would usually only defend one (limited or revisionist) way of doing it, usually referring to some specific language implementation. Long gone is the quintessential list of OOP talking points presented in C++/Java classes in the 90's.
For people new to this, a quick search should lead to an endless stream of results. I found this one immediately which looks decent and covers good ground.
Anyway, string lengths are byte lengths, and indexing strings is actually not panic-safe. This is why we have (still-nightly) char-boundary methods now.
If you want to work on characters. use .chars().count() and .chars().nth().
And character boundaries are themselves not always grapheme boundaries, which is also something that you might need to keep in mind when you start writing serious code.
With all that in mind, you should realize, for example, that probably every string reversing beginner exercise answer in every language is actually wrong. And the wrongness may actually start at the underspecified requirements 😉
The most important part of curl is the library, not the CLI tool. And the TLS backend is very much relevant due to varying features supported, different licenses involved, and varying levels of ease when it comes to building and distribution.
That's when you're providing binaries. Otherwise, you would have to be wary of potential compatibility issues with libcurl packages provided by different Linux distributions for example.
See CURLOPT_ECH for a recent and still evolving example of this.
What serious Linux users buy GPUs based on raw gaming performance on release week?
I personally buy based on open-source driver support. And this includes long-term active support, AND developer approachability.
My current GPU is an AMD/Radeon one because of that. But I'm reconsidering my position when my next hardware upgrade comes.
I reported an AMD GPU driver issue to mesa once. It was tested, confirmed, and patched by a competent AMD developer within a few days. Now you have easily reproducible issues like this not even going past the testing phase after many months. And there are similar issues across all model generations.
If I were to upgrade my workstation next year, I would probably go with an AMD CPU and an Intel GPU, which is the exact opposite of my current setup 🙃. One should never rely on outdated perceptions.
Another huh from me. Or maybe I'm missing something, because this should all be obvious.
The source of the standard library is a rustup component that everyone should have installed. As for crates, you don't have to manually download any sources. Just add the crate as a dependency, and jump around definitions as much as you like. You can remove the dependency later if you decide to not use it.
Huh! This is the internal ExitCode, and it's two jump-to-definition calls away. The first to get to the public type definition, and the second from the public type's struct field to the private type.
ExitCode is a struct, therefore it behaves like a type with many fields which define the types contained in the struct.
That's a bit too off. structs in rust are product types. A struct may define zero or more fields. And fields can be named or not. if not, such structs are called tuple structs.
In the doc page, if you clicked on source, it would have taken you to the definition.
rust
pub struct ExitCode(imp::ExitCode);
That's a public struct with one unnamed private field. The type of the private field also happens to be private/internal.
As for why, usually the purpose is providing type safety, a unified interface,... etc. Notice how for example a windows-only extension trait is implemented that allows converting raw u32 exit codes into ExitCode.
So now you have exit codes possibly sourced from u8 or u32 values depending on the platform. And you need a safe unified interface to represent them.
This was blocked by lack of some features in Lemmy.
I lost track of what got implemented over time and what didn't.
Some/All of these features would be needed:
!).First two are the most relevant. I think the first at least got implemented client-side (not sure).