7 ms·
The key bit is that specifications don't need to be "obviously computable", so they can be a lot simpler than the code that implements them. Consider the proper
by hwayne 7mo ago
The key bit is that specifications don't need to be "obviously computable", so they can be a lot simpler than the code that implements them. Consider the property "if some function has a reference to a value, that value will not change unless that function explicitly changes it". It's simple enough to express, but to implement it Rust needs the borrow checker, which is a pretty heavy piece of engineering. And proving the implementation actually guarantees that property isn't easy, either!
- deleted 7mo ago[deleted]