Abstractions that make it easier to achieve some property (such as enforced consistency), will often make it harder to intentionally achieve the inverse effect (such as intentional inconsistency) when you need it. That seems natural but is it inherent?
-
Show this thread
-
Another example is that type safe languages can sometimes make it really hard to write unsafe code when you need it. Often that is excused as an intentional design to avoid mistakes, but can't you make it easy to break the rules and also avoid mistakes?
4 replies 6 retweets 33 likesShow this thread -
Replying to @sebmarkbage
To echo what a bunch of people have said, I really like rust unsafe {} blocks. I would love something like that in TypeScript, for instance, instead of making everything looser to accommodate common unsafe practices.
1 reply 0 retweets 2 likes -
Replying to @wycats
I've actually heard some criticism that this is actually a pain point in Rust that unsafe blocks doesn't actually let you do anything (like C would) because it can taint other assumptions. The leaks have to be fixed with additional bridging code. I haven't dug into the details.
2 replies 0 retweets 1 like
I'd be interested in seeing more details. I'm not quite sure what this could be about that matters in practice. (Rust allows you to unsafely transmute anything into anything, so I'm not sure what relevant restriction this could mean).
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.