On 2014-04-26 09:31:51 +0000, Walter Bright <[email protected]> said:
http://wiki.dlang.org/DIP61
Best practices in C++ code increasingly means putting functions and
declarations in namespaces. Currently, there is no support in D to call
C++ functions in namespaces. The primary issue is that the name
mangling doesn't match. Need a simple and straightforward method of
indicating namespaces.
...
As more and more people are attempting to call C++ libraries from D,
this is getting to be a more and more important issue.
My opinion is that one shouldn't use namespaces in D.
But I do like this namespace concept. It sends the following message:
you're welcome to use a namespace if you like -- it'll work -- but 99%
of the time it'll only be some decoration in your source code that
users of your API can ignore at will because everything is still
available at module scope. (The 1% is when there is a name clash.) I
think it's a practical thing to do to avoid fake namespace substitutes
in D (look at std.datetime.Clock), even if it's a little dirty.
--
Michel Fortin
[email protected]
http://michelf.ca