On 08/01/2014 05:07 PM, Dicebot wrote:
On Friday, 1 August 2014 at 15:05:55 UTC, Andrei Alexandrescu wrote:
On 8/1/14, 4:00 AM, Kagamin wrote:
On Thursday, 31 July 2014 at 15:41:40 UTC, Andrei Alexandrescu wrote:
Then you have the globals write and writef which will compete with
those in std.stdio. -- Andrei
Aren't they from different overload sets?
Doesn't seem to me. They all accept e.g. one string. -- Andrei
So what is the problem? We have module system to resolve that, do we?
Exactly, that's the problem. They collide, so when import both the
hijack protection will error.
import std.stdio, std.log;
write("foobar"); // matches both std.stdio.write and std.log.write
It'd also make it more difficult to tell what `write("foobar")` does,
which is unacceptable for such a fundamental operation.