On Tuesday, 29 April 2014 at 20:33:07 UTC, Walter Bright wrote:
Not really. It is reasonable to expect that when Framework1 and Framework2 each import 4th party Vec, that they do it with an import rather than inlining Vec's declarations.

Vectors are not the best example since one library might use struct{float x,y,z,w;} and another use float[4], but that would be too complicated to unify on the D side without a wrapper. At least as far as I can tell.

(I.e. the C++ frameworks interoperate because the memory layout and semantics are the same, although the types are not.)

With "graphics::g(physics::f(…))" this would not have been an issue.

Having an alternative lookup method is a large increase in language complexity.

I wouldn't mind using fully qualified names, but others probably would.

It does occur to me that two C++ symbols in the same namespace may be regarded as the same by the lookup code. That may be a reasonable enhancement request.

Yes, that would help.

Reply via email to