Pjotr Prins <pjotr.publi...@thebird.nl> writes: > On Wed, May 26, 2021 at 04:32:03PM +0200, Ludovic Courtès wrote: >> That’s a somewhat different topic. FWIW, I’m both excited at the idea >> of having a memory-safe replacement for C gaining momentum, and >> frightened by the prospects of Rust being this replacement, for many >> reasons including: Rust does not have a good bootstrapping story, as we >> know all too well, Cargo encourages sloppy package distribution à la >> npm, Rust in the kernel would give a false sense of safety (it’s still >> that big monolithic blob!), and the Rust community is very much >> anti-copyleft. > > Having adopted Rust for some of our bioinformatics work, I can fully > agree. It is actually hard to use Rust without Cargo and it is an > implosion npm-style waiting to happen if the most trivial program > already imports 100+ external packages - some of doubtful quality. > > Another thing I have against Rust is its syntax - but that is > (arguably) taste. I can't believe references are written with an > ampersand - and they are so common it is in your face all the time. > That is just noise. And sometimes the borrow checker really gets in > the way (and I pine for GC). We are sticking with Rust though because > the compiler works hard and is a sucker for detail, so it helps both > less and more experienced programmers to avoid C/C++ traps. Also Rust > has no OOP that people can use - I am very happy about that. In short > it is a fairly pragmatic FP language with some nice compile time > features. I don't love it but it is an OK compromise.
In terms of languages trying to be replacements for C: - Zig is one of the most famous ones, and will probably be the first C alternatives to reach 1.0. https://ziglang.org/ - Odin https://odin-lang.org/ - scopes which using S-expressions https://sr.ht/~duangle/scopes/ - Drew Devault's (creator or sway) secret programming language. It may be the second language on this list to reach 1.0 > > For kernels I completely agree with you. Memory safety is a red > herring because we face much deeper problems. Open hardware and > message passing is the way forward. > > Oh, did you know Rust expands all sources into one 'blob' for > compilation? At the crate level. It led to the meme: "The Rust > programming language compiles fast software slowly." > > I have not hit real issues yet with compilation speed, but it feels > like we regressed to huge C++ template expansion... > >> Guix, related projects such as Mes, Gash, and the Shepherd, together >> with the Hurd, offer a very different and (to me) more appealing vision >> for a user-empowering, safer, more robust, and yet POSIX-compliant OS. > > Good architecture is far more important than a borrow checker. > > Pj. > -- Joshua Branson (joshuaBPMan in #guix) Sent from Emacs and Gnus https://gnucode.me https://video.hardlimit.com/accounts/joshua_branson/video-channels https://propernaming.org "You can have whatever you want, as long as you help enough other people get what they want." - Zig Ziglar