https://issues.dlang.org/show_bug.cgi?id=22580
Andrej Mitrovic <andrej.mitrov...@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |andrej.mitrov...@gmail.com --- Comment #1 from Andrej Mitrovic <andrej.mitrov...@gmail.com> --- (In reply to Kurt Krueckeberg from comment #0) > I am new to D, but the code example explanation in section 12.6 is > confusing. The code example in section 12.6 refers to the "slice operator": > > "When the slice operator appears as the left-hand side of an assignment > expression, it means that the contents of the array are the target of the > assignment rather than a reference to the array..." > > Is there really a special "slice operator"? The operator used in the example > in section 12.6 is array index operator, []. So shouldn't the explanation > be changed to refer to the index operator (being applied to a slice that > appears on the left-hand side of an assignment statement)? To me, it is > clearer to say something like: > > "When the slice appears on the left-hand side of an assignment with the > index operator, it means that the contents of the array are the target of > the assignment rather than a reference to the array..." > > Or to say: > > "When the slice is indexed with the [] operator and it appears on the > left-hand side of an assignment, it means that the contents of the array are > the target of the assignment rather than a reference to the array..." > > Or simply: > > "When the slice is indexed and it appears on the left-hand side of an > assignment, it means that the contents of the array are the target of the > assignment rather than a reference to the array..." The slice operator is specifically `[]` or `[1..2]`. And you can think of `[]` as being the same as `[0..$]`, where $ is the array length. The index operator is `[1]` for example. It doesn't return a slice of the original array, it returns a single element from the array. That's indexing, not slicing. Perhaps there should be better documentation about the difference between the two though. --