I don't know D and just learning this syntax myself, and I'm genuinely interested in where you feel the smell is because I really like this syntax! For example:
I know Ruby, so here is what I'm used to:
half.map { |i| i + 1 }
I also know Elixir:
Enum.map(half, fn i -> i + 1 end)
...and JS, I guess because we have to:
half.map(i => i + 1) // It looks just like the Ruby one
...vs whatever the Python version is... I don't know Python very well, but I imagine it involves list comprehensions...
Compare all those to the aforementioned D version :
half[] += 1;
I'm really feeling the D version!
EDITED to fix little mistakes.