131 karma · joined January 16, 2025
In modern C++ (i.e. with smart pointers) something similar is true in that the UB can only occur in code dealing with certain types and functions (e.g. raw pointers), and not other types and functions. It's really the same as rust, just without the compiler support and the explicit unsafe blocks.
I'm confused at what speculative fiction exists from before the 1910s (or thereabouts) which involves FTL? I've no doubt there's a handful of works but this is hardly a plausible explanation for a _recent_ decline in these topics.
As a counter-example to your idea, it's theoretically possible for a type to have a `?Sized` field (at the end), although this idea was never completely fleshed out in the language. A value of such a type could be constructed on the stack.
Now in practice, if you encounter a type with an unsized type parameter, it's probably a smart pointer. It may have an ownership relation to some data which lives on the heap. That may be what you're referring to. But such heuristics are going to be more confusing than helpful for anyone who doesn't understand the basic premise. The location of data in rust is actually quite simple, but sometimes beginners make it more complicated than it really is somehow.
(Btw, same sort of thing occurs with zfs combining raid and filesystem to close the parity raid write hole. Often strictly layered systems with separation of concerns are less than the sum of their parts.)
This drives up price faster than quality though. Also increases latency.
Unfortunately during coding I have found many LLMs like to encode their beliefs and assumptions into comments; and even when they don't, they're unavoidably feeding them into the code. Then future sessions pick up on these.
It is very difficult to tell whether this is a definitional problem - people believe any kind of encapsulation is OOP - or if some people can't wrap their heads around how to do encapsulation without message passing and the rest.
ONLY IF YOU'RE LIVING IN THE '90S! THE REST OF US HAVE MATRIX HEADLIGHTS! ALSO TURN OFF YOUR CRUISE CONTROL FOR COOL!
Your information is outdated. My Tesla with matrix headlights keeps the high-beam indicator on but oncoming drivers are not blinded.
As for your first point, I think it's self-defeating: You claim "you don't have to worry about libraries providing an interface to your chosen incremental streaming library", but this requires "a careful choice of implementation" in those libraries with your chosen incremental streaming semantics in mind, which is the same thing but less explicit! And as long as mere mortals can't figure out the magic implementation of `sort` which makes incremental streaming work without explicit bindings, then what's the point?
Haskell is a great language for consuming libraries written by Ed Kmett, as your link demonstrates. Otherwise, it's difficult to work with.
I think the argument you are trying to make rests on a pretty serious fallacy generalizing "I care about some subsets of natural numbers" (and maybe " I care about subsets of natural numbers, in general") to "I care about all subsets of natural numbers, including undefinable ones".
I never believed this explanation for SC as provided by Culture-aligned unreliable narrators. It seems far more likely that it's an outlet for people who desire to have control over others, a supermajority of the West which is conspicuously absent from the novels.
I recently finished Inversions and I think this novel supports my hypothesis by featuring citizens whose needs in this direction are being fulfilled directly or indirectly via SC.
Incidentally when Minds actually want to get things done urgently, they go beyond SC; see Excession. This supports that SC is a playground for human (and drone/other AI) expression rather than an actual power-center of the Culture.
FSD goes around stopped vehicles without any problem too.