[dmd-beta] Time for a new beta?

Nick Sabalausky bus_dmdbeta at semitwist.com
Sat Aug 20 15:10:01 PDT 2011


From: "Dmitry Olshansky" <dmitry.olsh at gmail.com>
> On 20.08.2011 12:39, Rainer Schuetze wrote:
>> 3. I tried to remove some more (currently soft) deprecation messages 
>> regarding std.ctype, and it turned out that it was a bit of a hassle 
>> to get it to compile because I had to mix both std.ascii and std.uni. 
>> This is happening because I'd like to use the isAlpha from std.uni, 
>> but there are other functions missing from std.uni (like isDigit, 
>> isHexDigit, etc.).
>>
>> I think this was discussed before, but I'm not sure what the 
>> conclusion was. I suggest adding some forwarding aliases to std.uni 
>> for function that have identical implementation, and ensure that the 
>> compiler does not complain about ambiguities if these are just aliases 
>> to the same symbol.
>>
> Recalling last discussion on this, the users have to solve this on their 
> own. Be it use unicode everywhere or full std.ascii.xxx/std.uni.xxx or 
> whatever. I ended up using renamed imports.
> 

There's a simple alias trick that works very well for that sort of thing:

------------------------
module m1;
void a() {};
void b() {};
------------------------
module m2;
void b() {};
void c() {};
------------------------
module main;
import m1
import m2;

// Nifty trick: Pull m1's b() into local scope,
// effectively"prioritizing" it.
private alias m1.b b;

void main() {
    b(); // Works: Calls m1.b()
}
------------------------



More information about the dmd-beta mailing list