Relative paths and Rust 2018 `use` statements

Speaking now for myself: first of all, I’m sorry for re-raising the spectre of module system discussions :joy:! But OTOH, it’s bound to happen as we come down the home stretch of stabilization; we’re going to need to rehash the discussion and examine our experiences, and it seems prudent to consider this new, nearby design.

From a personal perspective, I’m not entirely sure how I feel about the new variant. I really liked the complete locality of use paths in the current Rust 2018 design. But I have a feeling that in practice, the new variant is more intuitive and ergonomic, and unlikely to actually create confusion around clashes (especially if we lint).

If others think it’s worth at least trying, we might consider implementing this variant with a separate flag so we can experience it first-hand.

4 Likes