Posting this here because I feel like I'm detecting a new pattern in the industry. Let me explain:
* Rust's forces the programmer to come up with a proof about race conditions, memory lifecycle
* Zig helps the programmer specify complex constraints at compilation time with a special keyword (on types, memory used, data structures, etc)
Quoting from the article:
> We can further improve performance by constraining some of the computation related to Java’s dynamic features (e.g., class loading, class redefinition, and reflection) [...] A condenser is a program transformer that runs in a phase between compile time and run time
It feels like programming is more and more about feeding new kinds of information to the compiler.
Maybe we can have a sufficiently smart compiler if we're having a conversation with it?
It feels like we're going to have to turn into mathematicians, doing proofs of constraints on future behavior.
1 comment
[ 4.1 ms ] story [ 18.9 ms ] thread* Rust's forces the programmer to come up with a proof about race conditions, memory lifecycle * Zig helps the programmer specify complex constraints at compilation time with a special keyword (on types, memory used, data structures, etc)
Quoting from the article:
> We can further improve performance by constraining some of the computation related to Java’s dynamic features (e.g., class loading, class redefinition, and reflection) [...] A condenser is a program transformer that runs in a phase between compile time and run time
It feels like programming is more and more about feeding new kinds of information to the compiler.
Maybe we can have a sufficiently smart compiler if we're having a conversation with it?
It feels like we're going to have to turn into mathematicians, doing proofs of constraints on future behavior.