2 ms·
> Which is easier to achieve when languages are strong typed and require explicit escape hatches for doing unsafe things. No disagreement here. What I'm saying
by catnaroek 11y ago
> Which is easier to achieve when languages are strong typed and require explicit escape hatches for doing unsafe things.
No disagreement here. What I'm saying is that, in today's environment, requiring escape hatches for dynamic resource management is effectively requiring escape hatches for everything. The worst part is that, in most languages, you don't even need to enable escape hatches to preform nonsensical operations like mutating the same object in two threads, without explicit concurrency control. Literally everything is unsafe!
To the best of my knowledge, the only practical language today that attempts to mitigate these issues is Rust. Even if we somehow revived those old "safer than C even if this doesn't mean much" languages, they would probably not help much.
> Expensive is relative. I rather have the computer do stuff for me, and focus being productive.
With runtime checks, your computer isn't really doing anything for you. Your user's computer is alleviating a problem created by you.
- pjmlp 11y agoIf the user is happy having their problem solved in 500 ms, doing it in 10 ms isn't going to change the outcome. Besides we have to make those CPU quadcores with 8 threads and a 4 GPU cores busy with something. Also, as much as I like Rust, they still need to sort out some usability issues like non-lexical ownership.
- catnaroek 11y ago> Also, as much as I like Rust, they still need to sort out some usability issues like non-lexical ownership. I'd rather take the inconvenience of declaring the occasional use-once temporary variable, which takes at most 10 seconds of my time, than the inconvenience of tracking object lifetime bugs, which can take days or weeks to fix. Correctness is non-negotiable.