'exp' vs 'std'? Forked: Vote for std.process

Steven Schveighoffer schveiguy at yahoo.com
Fri Apr 12 10:27:57 PDT 2013


On Fri, 12 Apr 2013 13:17:07 -0400, Andrej Mitrovic  
<andrej.mitrovich at gmail.com> wrote:

> On 4/12/13, Steven Schveighoffer <schveiguy at yahoo.com> wrote:
>> The issue I have is e.g. if std.process (a locked-API normal module in
>> this instance) uses std.log..
>
> It's just that warnings start to become really annoying after a while.
> I'd rather be warned every time I create a new project and use
> std.process (I will likely forget to pass -version=Use..), than be
> warned every single time I compile without the possibility to silence
> the compiler.

Hence my lamenting for a way to stop it :)

At this point though, we don't have anything equivalent to #defines.

Hm... how about this idea:

1. Add std.exp.module with the API as it will be WITHOUT warnings
2. Add std.module with your suggested version statement, that publicly  
import std.exp.module
3. Internal phobos modules that use std.module privately will import  
std.exp.module directly to avoid the printout
4. upon official release, std.exp.module is moved to std.module, and the  
warning is removed.  Modules in phobos that privately used std.exp.module  
are updated to import the official version.

The only issue I see with this is, if we ever get dynamic libraries, a  
recompile will work, but an update of the dynamic lib will not.

I think a little compiler help here would be immensely useful.

-Steve


More information about the Digitalmars-d mailing list