Kent Borg said on Mon, 19 Jan 2026 07:34:23 -0800 >On 1/18/26 10:57 PM, Steve Litt wrote: >> Computers must be complex" is not a law of the universe. > >True, but the universe occasionally will offer opportunities. We >sometimes do complex because we can.
That, my friend, is the entire problem. Complexity carries a cost, and a cost/benefit analysis must be done. There are some folks who like to add complexity just because they can, whether it carries a net benefit or not. >I like to look at early C compilers as one example. They were amazing. >A high-level (i.e., not assembly) language that was very high >performance, and C programs could even be portable across different >computers! C was wonderful; I loved programming in C. I especially loved it after 1) they introduced prototypes inside the parentheses, and 2) When they optimized it well enough to get top-notch performance without all those K&Risms. I loved Turbo Pascal even more than C. Just as performent, just as versatile, and more difficult to make a mistake, especially because if you didn't allocate variables off the heap, because then you didn't need pointers. With what I know now, I sure wish I'd learned Ada back then. Much, much safer than C. Kind of like Rust for the 1980's. By the way, I think C++ sucks big time. I hate C++ as much as I love C. >And we complained at how slow it was (I remember decades ago one >beautiful summer Friday afternoon fixing a bug that was going to turn >into flipping just 1-bit in the binary, and it took over an hour from >making the change in my editor to seeing the result running—and then >being able to leave for the day). I think there were design mistakes >in C, but it was *amazing*, and I think it was appropriately complex. > > >Time passed and the short comings of C are starting to bite. So true. Today we use C for much bigger programs, and in much more hostile environments. I'm not too Dunning-Kruger to admit that I need a language that protects me from my own mistakes. >I like to look at the current Rust compiler as a contrasting example. >It is even more amazing. It is a much more robust, higher-level >language, still very high performance, and programs can still be >portable across different computers. Rust and/or Ada is needed very badly for safety critical applications. If there's anything worth spending complexity on, it's Rust and Ada. I've heard Rust is getting a lot more complex with time: I hope they don't go too far. >And Rust developers today complain that the compiler is too slow. It >can sometimes take minutes for a large program to compile. I also >think it is appropriately complex, it is much more complex than was >original C. What do they consider a "large" program? 1K lines? 10K lines, 100K lines, 1000K lines? The way I see it, if a single source file is more than 5K lines, the program has not been properly modularized, and will end up being unmaintainable. Those modules had better also encapsulate one thing and have thin interfaces, or once again, complexificated unmaintainability. I briefly studied both Ada and Rust in 2024 and 2025 respectively, and did a few Programming 101 programs in each. Neither is as straightforward as C, Turbo Pascal, Cobol, Python, Lua or Basic. You have to go around safety barriers to accomplish things, and I would have been much better off if I'd learned Ada concurrently to learning Pascal. Kevin Chadwick from the GoLUG list will argue that Ada is better than Rust, and give several reasons beyond my comprehension. I'm interested in learning Go because I hear Go development is very quick, and it has a lot of network stuff built in. I think Rust, Ada and Go all have multithreading built in, if I remember correctly, and all three IIRC prevent you from making threading mistakes. > > >As much of an improvement over C as Rust is, there is *NO* way we >could have had Rust 50-years ago. Wellllll --- we had Ada 50 years ago, and it's kinda similar although it achieves its safety in a different way and doesn't have Rust's memory safety: It just prevents you from doing anything that wouldn't be memory safe. >Forget that the design benefited from experience over those >intervening decades, in the 1970s there simply was not a computer on >earth that would have been able to run the Rust compiler. The Cray 1 >"supercomputer" was a few years behind C and it wouldn't be able to >hold a candle to the Raspberry Pi 4 I sometimes run the Rust compiler >on. And compiling Rust on a Raspberry Pi is considered silly, because >it is far too slow. > >We have the complexity of Rust, in part, because we can. You said it: "in part". Exactly right. >And for this >amazing language it is worth it. Agreed. >P.S. Yesterday was a glorious, beautiful, clear morning in LA (where I >often am these days). I remember when LA didn't have days like that. >Because all those '60s cars were on the road. No, I certainly don't >want a 2026 car, one that is designed like a disposable "smart" phone, >but I also hope we don't revert to the unburned gasoline belching >"good old days" of the 1960s. I lived in LA 1980-1998 (Venice 1980-1989, Reseda 1989-1998) and how well I remember riding my bike over Sepulveda pass into the Valley and choking on all the smog there. Computers, fuel injection and electronic ignition have given us more mileage and less emissions, and I'm grateful for that. As I said in an earlier message, I don't want a computer in charge of my windshield wipers, my radio, my windows and door locks, and the days before those stupid remote keys sure were wonderful because you could lock everything in your car and go swimming in the salty ocean with your car key in your pocket. Today you have to have somebody on shore to guard your remote key. SteveT Steve Litt http://444domains.com _______________________________________________ Discuss mailing list [email protected] https://lists.blu.org/mailman/listinfo/discuss
