|
|
|
|
|
by mratsim
2193 days ago
|
|
`non-nil` was deemed too breaking to introduce for 1.0 or even as a default because if you tagged your input as `T not nil` the compiler was not powerful enough to prove that T was indeed not nil except in the most obvious cases. The new battleplan is to integrate the Z3 theorem prover into Nim as DrNim: - https://nim-lang.org/docs/drnim.html The first use-case will be proving array bounds at compile-time and elide them. Future use-cases include not nil tracking. |
|
1) Echoing the other comments in this thread about uneasiness with feature creep
2) Wouldn't have been a breaking change if the language didn't have nil from the beginning