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.

Reply via email to