| ▲ | nine_k 4 hours ago |
| Yes, it's the lack of Unix experience that's terrifying. So many of mistakes listed are rookie mistakes, like not propagating the most severe errors, or the `kill -1` thing. Why were people who apparently did not have much experience using coreutils assigned to rewrite coreutils? |
|
| ▲ | aw1621107 4 hours ago | parent | next [-] |
| > Why were people who apparently did not have much experience using coreutils assigned to rewrite coreutils? From what I understand, "assigned" probably isn't the best way to put it. uutils started off back in 2013 as a way to learn Rust [0] way before the present kerfuffle. [0]: https://github.com/uutils/coreutils/tree/9653ed81a2fbf393f42... |
| |
| ▲ | nineteen999 3 hours ago | parent | next [-] | | Yeah perhaps learning UNIX API's and Rust at the same time doesn't lead to a drop in replacement ready to be shipped in major distributions. Who whould have thunk it. | | |
| ▲ | aw1621107 2 minutes ago | parent [-] | | Strictly speaking it doesn't preclude eventually producing a production-ready drop-in replacement either, though evidently that needs a fresh set of eyes. |
| |
| ▲ | bpbp-mango 3 hours ago | parent | prev [-] | | exactly this. I wrote one of them back then as a learning experience. some of the code I wrote is still intact, incredibly. |
|
|
| ▲ | JuniperMesos 3 hours ago | parent | prev [-] |
| Why is it even possible to represent a negative PID, let alone treat the integer -1 as a PID meaning "all effective processes"? This seems like a mistake (if not a rookie mistake) in the Linux kernel API itself. |
| |
| ▲ | nine_k 2 hours ago | parent | next [-] | | -1 is a special case, a way to represent a PID with all bits set in a platform-independent way. It's not very clean, and it comes from ancient times when writing some extra code and storing an extra few bytes was way more expensive. | |
| ▲ | dminik 2 hours ago | parent | prev | next [-] | | It feels a bit like a "better is better" language hitting all of the quirks of a "worse is better" environment. | |
| ▲ | antonvs 2 hours ago | parent | prev [-] | | Pretty much all the rough edges being discussed here are design mistakes in Linux or Unix, and/or a consequence of using an unsafe language with limited abstractions and a weak type system. But because of ubiquity, this is everyone’s problem now. |
|