On 05/30/2013 10:50 AM, Jonathan M Davis wrote:
On Thursday, May 30, 2013 09:43:36 Russel Winder wrote:
On Thu, 2013-05-30 at 02:19 +0200, MrzlganeE wrote:
[…]

In places where I write a bunch of short mathy code, I do not
want to use 'auto'. The := operator would allow to declare a
variable, deduce its type, and define its value.

void main() {

      x := 1;
      y := 2.0;
      z := x * y;
      y = 3.0;

}

[…]

      for (i := 0; i < 24; i++) {
      }

Go does exactly this, and it is good.

Less is more.

Less would mean not having this syntax,  because it would be adding more to the
language and therefore increasing its complexity.


Not noticeably.

Personally, I don't think think that the extra complication caused by having
another syntax for something that we already have is worth it, regardless of
whether it's aesthetically pleasing or not.


The complexity argument is not a strong argument for such a simple feature (It takes around 10 minutes to implement in a compiler and 2s to learn.), especially given the existing complexity of D.

It simply does not fit nicely into the rest of the D declaration syntax. (Which I'd argue is an issue with the C-like syntax of D, but many seem to like that.)

And honestly, I actually think that it would make code _less_ legible.

In my experience, anything that removes excessive verboseness makes the code more legible.

Sure, other languages use this syntax, but the difference between = and := is 
minor,

It is noticeable at a glimpse. It's simply a matter of getting accustomed to new syntax.

and we already have auto.  So, this adds no functionality whatsoever.


It adds functionality to the parser.


Reply via email to