map kinds of Ranges

Don nospam at nospam.com
Wed May 25 07:59:46 PDT 2011


Robert Clipsham wrote:
> On 24/05/2011 04:28, Jonathan M Davis wrote:
>>> Thoughts on this?
>>
>> I believe that the best and most likely to be implemented syntax which 
>> has
>> been suggested (it was Andrei's idea IIRC) is to simply add optional 
>> clauses
>> to attributes. So, instead of pure, you'd do pure(condition). If the 
>> condition
>> is true, the templated function it's on is pure. If the condition is 
>> false,
>> then the function isn't pure. Don't expect pure to become @pure or 
>> nothrow to
>> become @nothrow though. I think that at this point, any attribute 
>> which is a
>> keyword is going to stay one, and any attribute that has @ on the 
>> front of it
>> is going to stay that way as well.
>>
>> - Jonathan M Davis
> 
> Wouldn't it make sense to follow the same syntax as auto ref? auto pure, 
> auto nothrow, auto @safe etc? (Although I guess that doesn't allow for 
> conditions, nevermind :<)

'auto ref' is one of worst syntax anomalies in the language. It should 
be a single keyword -- eg, 'autoref' -- it has nothing in common with 
the other use of 'auto', and it's not necessarily 'ref'.


More information about the Digitalmars-d mailing list