opApply not called for foeach(container)
Jonathan M Davis
jmdavisProg at gmx.com
Wed Jul 11 10:11:05 PDT 2012
On Wednesday, July 11, 2012 15:43:13 Christophe Travert wrote:
> "monarch_dodra" , dans le message (digitalmars.D:171902), a écrit :
> > I just re-read the docs you linked to, and if that was my only
> > source, I'd reach the same conclusion as you.
>
> I think the reference spec for D should be the community driven and
> widely available website, not a commercial book. But that's not the
> issue here.
The problem is that it's essentially spread out across 3 places: the online
spec, TDPL, and the compiler. The online spec is _supposed_ to have all of the
information and be correct, but sometimes behavior and/or planned behavior has
been changed without properly updating the online spec, and sometimes the
online spec just doesn't include enough information. TDPL includes intended
behavior, which in most cases is correct and matches what the compiler
currently does, but in some cases it includes features which just haven't been
fully implemented yet (e.g. having multiple alias thises). The compiler is of
course the current behavior.
So, when they don't match, we have to figure out what the intended behavior is
and, in some cases, what we now want the behavior to be (regardless of what we
intended before).
The source for the website is freely available ( https://github.com/D-
Programming-Language/d-programming-language.org ) - including the spec - and
anyone can create a pull request for it. The main problem is probably a
combination of the fact that the people who know enough to fix it are very busy
with other things (like fixing compiler bugs) and the fact that they aren't
always aware of what needs fixing. They're also much more likely to interpret
what's there as was intended rather than what a newbie would take it to mean
and not realize that it needs improvement. And I suspect that most of the
people who know what they're doing around here don't actually look at the spec
much. Raising specific issues when you find them and putting them in bugzilla
will help.
So, yes, the online spec should have everything needed to specify D in it, but
making it so requires time and manpower, and for the most part, that has been
spent on other stuff (much of which is also critical - and often more
critical).
- Jonathan M Davis
More information about the Digitalmars-d
mailing list