On Tue, Nov 22, 2022 at 8:38 PM Matt Armstrong wrote: > The argument is that all of these languages are all flawed in the same > way, and that a package/module system designed today should aim for > better. That's an overgeneralization. Ada, for example, is free from Beaujolais effects, and it supports overloading of names, so use'ing a package will, at most, cause collisions detected at compile time and easily fixed. (And even these collisions will only happen if the overloaded functions have a similar parameter profile and you happen to use one of them in your code). Of course in Ada it is, perhaps, more common today to rename imported packages as a short prefix, instead of "using" them, but that's for readability, which is a big emphasis in Ada culture. I won't claim Ada packages are a perfect solution, but certainly they don't seem to me "flawed in the same way" that some others you mentioned.