On Tuesday, 16 March 2021 at 15:02:54 UTC, Steven Schveighoffer
wrote:
On 3/16/21 8:49 AM, Per Nordlöw wrote:
I find myself writing
foreach (_; 0 .. n)
doSomething(); // no using the variable `_`
.
What about relaxing the syntax to allow
foreach (; 0 .. n)
and/or
foreach (0 .. n)
?
Thereby making the `ForeachTypeList` of `AggregateForeach` in
the grammar rule [1] optional.
[1] https://dlang.org/spec/statement.html#foreach-statement
Meh, is this a common need though? The first form isn't
terrible.
In general, I'd say it would be nice to designate _ as an
unused variable (i.e. not allowed to access it, and it doesn't
trigger shadowing errors). It's like this in Swift for instance.
-Steve
the _ as unused variable would be useful when the parameter has
out parameter but wouldn't to ignore it. C# does something like
this currently.
int foo(int x, out bool state) { }
// only wants return value
int y = foo(x, _);