On Friday, 5 October 2012 at 00:22:04 UTC, Jonathan M Davis wrote:
On Friday, October 05, 2012 02:08:14 bearophile wrote:
Tommi:
> Maybe we forget about commas then, and extend if-clauses so
> that you can properly define variables at the beginning of > it.
> Separated by semicolons.

Regarding definition of variables in D language constructs, there
is one situation where sometimes I find D not handy. This code
can't work:

do {
const x = ...;
} while (predicate(x));


You need to use:

T x;
do {
x = ...;
} while (predicate(x));

Don't forget the with statement, it's not "just" for switches! In many cases it's actually even better than the proposed changes _and_ it works today!

import std.stdio;

struct d_is_beautiful
{
  int a=1;
  int b=2;
}

void main()
{
  with(d_is_beautiful()) if(a==1)
    writeln("ok");
  else
    writeln("ko:", a);

  with(d_is_beautiful()) do
  {
    ++a;
    writeln("iter");
  }
  while(a!=b);
}

Reply via email to