But what, really, is Undefined Behavior, and is it as bad as its reputation?
In this blog post, I will look at this topic from a PL perspective, and argue that Undefined Behavior (or UB for short) is a valuable tool in a language designer's toolbox, and that it can be used responsibly to convey more of the programmer's insight about their code to the compiler with the goal of enabling more optimizations.
I will also explain why I spent a significant amount of time adding *more* UB to Rust.
But what, really, is Undefined Behavior, and is it as bad as its reputation?
In this blog post, I will look at this topic from a PL perspective, and argue that Undefined Behavior (or UB for short) is a valuable tool in a language designer's toolbox, and that it can be used responsibly to convey more of the programmer's insight about their code to the compiler with the goal of enabling more optimizations.
I will also explain why I spent a significant amount of time adding *more* UB to Rust.