Make const, immutable, inout, and shared illegal as function attributes on the left-hand side of a function
monarch_dodra via Digitalmars-d
digitalmars-d at puremagic.com
Sat Oct 11 00:36:20 PDT 2014
On Saturday, 11 October 2014 at 04:11:30 UTC, Dicebot wrote:
> On Friday, 10 October 2014 at 02:38:42 UTC, Walter Bright wrote:
>> This has come up before, and has been debated at length.
>>
>> const is used both as a storage class and as a type
>> constructor, and is distinguished by the grammar:
>>
>> const(T) v; // type constructor, it affects the type T
>>
>> const T v; // storage class, affects the symbol v and the
>> type of v
>>
>> In particular,
>>
>> const T *v;
>>
>> does not mean:
>>
>> const(T)* v;
>
> Wait what? Are you saying there is a single case when this:
>
> const T var;
>
> is not identical to this:
>
> const(T) var;
No, look at the pointer symbol.
> Reddit users are not the ones who invest into this language. If
> this attitude won't change it is only a matter of time until
> you start losing existing corporate users deciding to go with
> other language or a fork instead (likely latter).
>
> I am very serious. Being a D user pretty much by definition
> implies someone willing to risk and experiment with programming
> tools to get a business edge. If costs of maintaing own fork
> become lower than regular losses from maintenance overhead from
> language quirks it becomes simple pragmatical solution. There
> is nothing personal about it.
>
> Consistency and being robust in preventing programmer mistakes
> is single most important feature in the long term. @nogc, C++
> support, any declared feature - it all means nothing with a
> simple necessity to not waste money fighting the language.
>
> In that sense proposed change is _very_ beneficial in ROI
> terms. It forces trivial code base adjustment that results in
> preventing very common mistake rarely obvious for a newbies.
> This means a very real money gains in terms of training and
> daily mantenance overhead. Something I don't care much in a
> personal projects but will damn appreciate as one caring for
> success of my employer.
>
>> This endless search for the ideal syntax is consuming our time
>> while we aren't working on issues that matter. (And this
>> change will consume users' time, too, not just ours.)
>
> Hardly anything matters more than that. Issues like that
> consume our time continiously for years, accumulating in wasted
> days weeks of worker time. Compared with time needed to adjust
> even several MLOC project gain is clear.
Agreed with the sentiment.
> #pleasebreakourcode
Lol.
More information about the Digitalmars-d
mailing list