I think that the imported module member names should be preferred than module fully qualified name, because with `package.d` feature, it would easily conflict. For example:

```d
import std.algorithm;  // if the module will be divided by std/algorithm/package.d
import std.algorithm.sort;

std.algorithm.sort(...);    // sort is a module name or template function?
```

----

And, this is practically necessary behavior. In many cases, std/algorithm/package.d would be implemented as like:

```d
module std.algorithm;
public:
 import std.algorithm.sort;
 import std.algorithm.find;
 ...
```

And the fully qualified names of public imports in `std/algorithm/package.d` will be *pulled* into the position of `import std.algorithm`.

```d
import std.algorithm;
// In here, FQN std.algorithm.sort will be accessible
```

So, preferring module name `sort` would block the access to the template function `sort`.