On the richness of C++

Georg Wrede georg at nospam.org
Sun Apr 13 13:33:49 PDT 2008


Walter Bright wrote:
> Edward Diener wrote:
>> Walter Bright wrote:
>>> Kevin Bealer wrote:
>>>
>>>> I was amazed that Boost could do things like the Lambda support with 
>>>> _1 _2, etc. Those Boost guys are geniuses.
>>>
>>> I agree, they are geniuses. But that's really what is wrong with C++, 
>>> you shouldn't have to be a genius to get advanced things done.
>>
>> Are D's templates a complete replacement in functionality for Boost's 
>> MPL ? If so could you write an article on your web site about the 
>> how's and why's of that ? I am still trying to understand D's 
>> templates based on the sparse documentation of them.
> 
> 
> I don't really understand Boost MPL, but D's template system is 
> considerably more powerful than C++'s. I agree that more documentation 
> is needed, *but one can easily write a book about it*.

[my bold above]

ROTFLMHO! :-) :-) :-) :-) :-) :-) :-)

Marketing talk aside, I doubt if anyone thinks even D's templates are 
/that/ easy.

(Sorry, couldn't resist. I assume you actually meant the issue is broad 
enough. But I /did/ lough out aloud.)

>> Remember that part of the difficult for the Boost developer is also 
>> supporting many non-conforming C++ compilers, so part of the genius of 
>> what they are doing is manipulating around compilers that do not deal 
>> with C++ templates correctly ( perhaps because the details of the C++ 
>> template system are so abstruse and difficult to understand and 
>> implement).
> 
> It's amazing even not considering compiler bug workarounds. And yes, a 
> large reason for the compiler bugs is because it is so hard to 
> understand how it is supposed to work.

(OT:) I think we're missing the point here. Suppose someone finds 
archives about C++, compiler development, C++ Standards Committee's 
memoranda, drafts and decrees, after /a hundred/ years have passed. Then 
one sees *in hindsight* how persistently and altruistically folks tackle 
the "hard" parts of computing, irrespectively of if they represent 
/actually/ Hard problems, or just something that's hard because other 
people did a sloppy job!

I mean, today we just "live with" the C++ spec. With any distance (be it 
geographical (as in on the Moon) or temporal (as in looking at our times 
as they were some Western movies), it *immediately* becomes painfully 
obvious that nobody should accept such a situation without rebellion. 
And all the more because "C++ is The Programming Language" of our time.




More information about the Digitalmars-d mailing list