On Friday, 27 May 2022 at 05:06:54 UTC, Walter Bright wrote:
>On 5/26/2022 8:07 PM, rikki cattermole wrote:
>I want lifetime checks to work,
So do I. But nobody has figured out how to make this work without strongly impacting the programmer.
>I want users of my libraries to be able to use my code without caring about stuff like memory lifetimes and be strongly likely to never hit an issue even with concurrency. I want the average programmer to be able to use my stuff without having to care about the little details.
The garbage collector does this famously.
>DIP1000 so far does not appear to be working towards a design that meets these goals.
Rust is famous for forcing programmers to not just recode their programs, but redesign them from the ground up. How they managed to sell that is amazing.
Cause Go uses a GC and there's no way around GC related spikes in Go. Rewriting programs in Rust to avoid the GC is actually a thing.
Rust features actually complement each other. Things like ImportC, const, dip1000, and @live don't complement the language. Dip1000 and @live just don't make sense and their design is flawed on top of that. You keep saying it's optin when it adds complexity to the language, that's not optin. It seems they are just trying to copy Rust due to its success, without understanding why Rust is successful.