[rust-dev] Thoughts on the Rust Roadmap

Hi, I am not using Rust nearly as much as I wish I could, but I absolutely love playing around with it and seeing where it's heading. I think all things considered the language is going exactly where I want it to go. It's for the most part very pleasant to work with and it's getting better and better. But there is so much more work needed. Not just because the language is lacking things that are needed, but because many users of the language are not sure yet how to use it. The compiler and the standard library use widely different patterns and so do libraries written by other people. There are half a dozen ways to deal with errors now, there are different patterns of how to deal with Options and Results. There are vastly different ways to design whole APIs, how to deal with the traits and so forth. There are different patterns to interface with native libraries, different patterns to interface with task local data etc. The introduction of external iterators (which I found the most exciting change of the language) has shown a whole new area of shortcomings in the current feature set (lack decltype when returning composed iterators for instance, non sendable closures etc.). Not only did it show shortcomings in lacking features, it also put some emphasis on new patterns that are not widely deployed in the stdlib yet. I really hope there is left enough time to actually continue evolving the language and libraries before freezing anything. Especially now that the split into libnative and libgreen is happening it will be important to stay flexible for adjusting the design of the standard library so that we don't end up with two vastly different ways to do IO. It does not take a genius to realize that there is already some tension among developers with regards to where the language should be going, and at what pace. As an outside observer that is very much in love with Rust and where it's heading, I want to voice the wish that there will be enough time to continue evolving the language before racing to a 1.0 release. Especially now that there is a lot of interest in Rust and similar languages I believe this is necessary. As it stands right now, there are too many things that make Rust still frustrating because you program yourself into a corner. TL;DR: please don't rush a 1.0 release. Regards, Armin