4 ms·
I love this lack of namespacing personally, because it means that whatever crate you see in a project is going to be the same as the crate your see in another o
by baby 3y ago
I love this lack of namespacing personally, because it means that whatever crate you see in a project is going to be the same as the crate your see in another one. Never need to alias crate names. It happens in Golang all the time and I really think namespacing packages was a mistake there.
- lolinder 3y agoGolang's problems aren't due to using namespaces, they're due to delaying too many decisions until too late. Go has namespacing mostly because for a long time it didn't have a package manager at all, so people just used a bunch of ad hoc URL-based solutions mostly revolving around GitHub, which happens to have namespaces and also happened to lend itself to aliasing (because a whole GitHub URL is too long). If you want to look at an actual example of namespacing done well, Maven/Java is the place to look. There is no aliasing—the same imports always work across projects.