1. 8
  1. 5

    The module system is a strange beast indeed! It’s one of those things that when reading base level tutorials you think, “Yep that makes perfect sense!” …then you try and do something with it and get totally lost. But like the borrow checker, once it “clicks” it clicks! And you can see where the design decisions were made, and why.

    I think the combination of allowing the flexibility to use mod.rs and directories and inline mod { /* .. */ }s is great once it clicks…but can get overwhelming at first.

    Add to that the rules around use and pub use or mod and pub mod make it an extremely flexible system, but tough to grasp up front.