July 02, 2011 [Issue 1553] foreach_reverse is allowed for delegates | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=1553 --- Comment #10 from Walter Bright <bugzilla@digitalmars.com> 2011-07-01 19:39:51 PDT --- (In reply to comment #8) > But why couldn't a delegate be written for reverse iteration? Exactly. It can be. Why take this away? -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 02, 2011 [Issue 1553] foreach_reverse is allowed for delegates | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=1553 --- Comment #11 from Vladimir Panteleev <thecybershadow@gmail.com> 2011-07-01 19:41:10 PDT --- (In reply to comment #10) > Exactly. It can be. Why take this away? You get the same thing by putting the semantic in the delegate name, without risking bugs and misunderstanding. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 04, 2011 [Issue 1553] foreach_reverse is allowed for delegates | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=1553 Steven Schveighoffer <schveiguy@yahoo.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED CC| |schveiguy@yahoo.com Resolution|WONTFIX | Severity|normal |enhancement --- Comment #12 from Steven Schveighoffer <schveiguy@yahoo.com> 2011-07-04 05:44:32 PDT --- Have to chime in to agree with Vladimir here. foreach_reverse is such a special case (that is technically no longer useful), that I think it should only work on arrays. Essentially, using a delegate takes care of foreach_reverse for structs or classes: foreach(x; &obj.inReverse) and retro takes care of ranges, so all that is left is builtins. The only two builtin types that can be iterated are arrays and associative arrays. Reversing the order of iterating an associative array makes no sense at all. All that is left is arrays. I agree arrays need something that currently does not exist if we wanted to deep-six foreach_reverse, but it has no use outside arrays. I can't think of a single case where foreach_reverse should be used instead of foreach on a delegate. I'd say 100% of the time, it is an error. If you hear any complaining, I'll personally defend the choice :) I'm marking this as an enhancement, as technically foreach_reverse works as specified. If you do not think it's worth leaving open as an enhancement request, I'll leave it alone. The one good thing about this 'bug' is that it's not likely happen -- It likely happens when someone tries foreach_reverse on a delegate, finds it doesn't do what they want, and switches it back, never to be used again. I'd hazard to guess that if you implemented this fix, no code will break. Anywhere. If this is closed, I'll reopen for updating the documentation to say "using foreach_reverse on a delegate does *exactly the same thing* as using foreach on a delegate". If it won't be fixed, at least it should be documented as something you should never do ;) BTW, related is bug 2498 that would make the &obj.inReverse be writable as obj.inReverse (more pleasant to read/write): -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
July 04, 2011 [Issue 1553] foreach_reverse is allowed for delegates | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=1553 Walter Bright <bugzilla@digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED Resolution| |WONTFIX --- Comment #13 from Walter Bright <bugzilla@digitalmars.com> 2011-07-04 12:39:42 PDT --- (In reply to comment #12) > If this is closed, I'll reopen for updating the documentation to say "using foreach_reverse on a delegate does *exactly the same thing* as using foreach on a delegate". If it won't be fixed, at least it should be documented as something you should never do ;) That would be fine. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
February 06, 2012 [Issue 1553] foreach_reverse is allowed for delegates | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=1553 --- Comment #14 from Yao Gomez <yao.gomez@gmail.com> 2012-02-06 13:05:24 PST --- *** Issue 6251 has been marked as a duplicate of this issue. *** -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
October 21, 2013 [Issue 1553] foreach_reverse is allowed for delegates | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=1553 Denis Shelomovskij <verylonglogin.reg@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED CC| |verylonglogin.reg@gmail.com Version|D1 & D2 |D2 Resolution|WONTFIX | --- Comment #15 from Denis Shelomovskij <verylonglogin.reg@gmail.com> 2013-10-21 19:28:30 MSD --- Reopened for D2 because of a community support of the described problem. See NG thread: http://forum.dlang.org/thread/l40er2$1dhu$1@digitalmars.com -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
Copyright © 1999-2021 by the D Language Foundation