The issue is that it's hard to predict how certain features will be misused and even harder to remove a harmful feature from a language. That's why Java goes slow. (Although I think there's too much pussyfooting around string interpolation. But I also think too much type inference makes the code harder to read.)
My father-in-law once asked me how long it would take to teach him how to put people to sleep. I said, five minutes, but if you want them to wake up at the end, a lot longer.
I interpret that as they lose people all the time, but if you come into the ER with 10 bullet holes in you or after coming to a grinding halt on the freeway after a head on collision, they don't expect you to make it and it's not the sleepy drugs at fault.
Here's a thing humans do: They knew what they meant, but saw an amusing way it could be parsed, and said that, because it's amusing. We all knew what the comment really meant.
There's actually a few ways it could have been meant, or it could have been meant to convey all of them. We all have a pretty good idea in the general sense what they meant, but that amusing reply is also an invitation for the person to elaborate and add nuance.
They probably do. Not all medical procedures have a greater than 50% expected chance of survival, but it still might be better than the alternative. That doesn't necessarily mean the anesthesiologist is the once responsible for the death, nor that anyone is, for that matter.
Even the $20 tier of ChatGPT has privacy settings that forbid using the user's data to be used for training. The question is, whether this setting is respected.
minus two or three things, corporate data is classified as public/goverment data. we just saw something about earmarking domain last month? two being imminent domain. three being natsec.
risk of prescient theory is more important than dismissive ablation.
edit: to wit, facebook google and anything else not e2e.
For someone just starting to learn CS, it should not matter whether they're on PDP-11 or x64 or ARM. You can't start teaching with pipelining and speculative branch execution.
So C is good choice because there is a simple CPU architecture that it maps to well.
Fully agree. C sits in an almost perfect level of abstraction for students to get a vague sense of how the computer runs code.
Those that don’t need low level details can spend their professional career in languages like python and JavaScript while still have a sense of what lies beneath the abstraction.
For those that do want or need to go deeper, C is an excellent jumping off point into ASM and arch specifics.
Computers haven't presented an accurate model of how computers actually work for decades. Compare the surface ISA of anything mainstream since the mid 90s versus all of the superscalar and out-of-order execution happening under the hood.
Deliberate efforts to surface this deeper layer back to the programmer-facing ISA (VLIW, notably Itanium) failed spectacularly outside of niche applications. C and its contenders can't simply hop over the CPU abstraction presented to them without having to map backward from some lower-level model to the surface ISA it's forced to target then having the rug pulled every few years due to microarchitectural changes. It has managed to evolve surprisingly gracefully over decades from tiny 16 and 18-bit machines, sometimes segmented, to 32 and 64 bit machines, and even accommodating SIMD reasonably gracefully via intrinsics (which is about the best we can do at present, as CPUs continue to diverge wildly in this area, though I'm begrudgingly impressed by what modern compilers can do via autovectorization to optimize simple loops).