> And yet, most of the time when somebody even realises they shouldn't write codecs (and file compression and various other similar technologies) in C++ their next guess is Rust which while obviously an improvement over C++ is hardly a good choice for this work either.
To me, the point of it is just to be more explicit and ease maintenance, like `typedef int meters_t`, but more extensible. Compare `int foo_len` to `meters_t foo_len`.
Explicitness: Consider the ambiguousness of `int foo_len` when you're swapping between meters and feet (but use `int` for both).
Ease maintenance: If you want to change the type you use to represent meters (say from `int` to `size_t`, since it might be wise to make it unsigned), compare going through the code and changing each meter-related instance of `int` vs. just changing the `meters_t` struct declaration.
More extensible: Compared to `typedef int meters_t`, using a struct is useful if you ever have to add to the struct. (Maybe a second numeric member representing the conversion to some other unit of length or something.)
For "meters", this doesn't really apply, but using a struct also prevents you from accidentally trying to do math with numeric types that you shouldn't do math with (like ID numbers or something): https://stackoverflow.com/a/18876104/9959012
Where I work, the C++ style guide explicitly says not to alias int types like this cause it becomes annoying for others to keep looking up what each thing really is, and probably YAGNI. I agree with that recommendation.
Any int variable storing meters is probably called "meters" already.
The most amazing thing about it is how it manages to be so entertaining to read (the last thing I expected from a C++ textbook and a thing that made getting through it way easier)!
>I'm not sure if there's an even more recent edition that covers C++17 and C++20
The cytoplasm of those are very interesting. It has multiple partitions, and the cytoplasm is very viscous. They don't "pop" if there is damage or leak all their contents into the water. They can repair some amount of damage.
>A thought has been lately put forward, which may or may not have truth in it. What if — instead of Jupiter being a world, inhabited by animals and people, as is often supposed, with a small distant sun and five dim moons to give them light — what if Jupiter is himself in some sort a second sun to his moons, and what if those "moons" are really inhabited planets? It may be so. That is all we can say. The idea is not an impossible one. (p. 207)
And that's still all we can say about at least one of them[0]. :)
Just an FYI, NoScript is made largely redundant with uBlock Origin since if you enable the "I am an advanced user" checkbox in it's settings, it will allow you to selectively block or allow third party scripts and frames.
Not C++ nor Rust?! What then, tia? C? Ada??