Conversation

A counterpoint to this is that UB is not an empowering tool to users; we're shifting the burden of verifying optimisations to users *without* giving them any tools to do so. And it always comes back later to bit the users, not us. We need better alternatives here!
Quote Tweet
Undefined behavior can get a bad rap. Applied judiciously, however, it’s a critical tool for letting compilers optimize low-level code while keeping programmers in control. blog.sigplan.org/2021/11/18/und
1
9
Crochet, being a security-oriented language, cannot have something like UB for example. Even trusted FFI is problematic. So my current idea is to have little languages users can extend compilers for at local contexts, providing their own proofs, as a tool to the same end.
2
3
Replying to
Didn't know about RustBelt, but yeah, seems that it was going in that direction. But yeah, proving things is hard, and I'm not sure how to approach that for things like concurrency. Crochet currently goes in a direction more like Dafny, which mostly deals with bounds and stuff.
1
2
Ahh cool (was worried I was just mentioning stuff you were already aware of). If your curious about more on this stuff, you might find this post interesting, about integrating ‘syntactic type soundness’ with ‘semantic type soundness’:
1
Show replies