> When you compile, you have to provide a path anyhow, less hostile to > user and you don't have to change the code.
One of the things implicit in the thread now is removing the need to provide a path - the compiler can (usually) figure it out on its own. Try dmd -v and search for import lines. But requiring it on the user side just makes sense if versioning is important. Your program won't compile with a different version - you aren't importing a generic thing, you're depending on something specific. It should be explicit. (Btw, this is the big failure of Linux dynamic libraries. They started with a decent idea of having version numbers in the filename. But then they ruined it by having generic symlinks that people can use. They start using libwhatever.so when they really wanted libwhatever.so.4.2. It's a symlink on their system, so Works for Me, but if they give that binary to someone with a different symlink, it won't work. Gah.)