map kinds of Ranges
Steven Schveighoffer
schveiguy at yahoo.com
Wed May 25 08:06:48 PDT 2011
On Wed, 25 May 2011 10:59:46 -0400, Don <nospam at nospam.com> wrote:
> 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'.
The current implementation is incorrect. In a correct implementation auto
ref *is* always ref.
-Steve
More information about the Digitalmars-d
mailing list