On Mon, 29 Oct 2012, Andrei Alexandrescu wrote: > On 10/29/12 2:10 PM, Peter Alexander wrote: > > On Sunday, 28 October 2012 at 20:59:25 UTC, Walter Bright wrote: > > > > Seriously though, it's irrelevant. The fact is a lot of programmers, > > especially new programmers or ones from programming languages that don't > > use linkers find link errors scary and confusing. > > > > Pretending otherwise gets us nowhere. > > > > Saying it baffles you why things are this way gets us nowhere. > > > > Saying that "they should understand" gets us nowhere. > > I agree (and was about to post something very close to this). I've heard many > times about this particular baffling, and it's one of those cases in which > clearly people who are otherwise competent have quite a bit of difficulty. So > one reasonable resolution is "well that's how people are, and that you think > differently doesn't solve the matter one bit, so let's see what steps to take > on improving it". > > From what I can tell here's how to solve linker error issues: > > 1. Automatic demangling of the symbols involved must be in place. > > 2. For undefined symbols, there must be reference at source file and line > level of where they are referred - /all/ places! > > 3. For multiply defined symbols, there must be reference at source file and > line level for each definition. > > I understand there are technical difficulties in implementing the above, but > that doesn't justify being baffled. > > Being baffled is not an option. > > > Andrei
There's another angle to this: 1) It's been stated more than once that one of the goals for D is to achieve a user base of over 1 million users. 2) I assert that there aren't more than 1 million programmers with the level of expertise and experience required to understand what happens during compilation to a sufficient degree that they feel comfortable with the tool chains that D (and c and c++) have today. Conclusion, the tool chains must get more user friendly.
