nobody wrote:
Linus Torvalds shows his opinion about why he chooses C here:
http://www.realworldtech.com/forums/index.cfm?action=detail&id=110618&threadid=110549&roomid=2

He wants a language that context-free, simple, down to the metal.
He dislikes C++ b/c it has many abstraction.

I think some D experts should post some comments.

I think the context problem comes from the wrong understanding of the OOP. The C programmers when try to write C++ object-oriented code still continue to think in procedural and everything available(global) way. But, object-oriented way assumes the programmer to actually think in abstract manner.

Sure, when it comes to reading the C++ code of not mature C++ programmer, and who didn't adopt object oriented paradigm, who mix his past practical experience(and he knows it works!, why abandon it?) with OOP...
It's hard to understand what he means by writing inconsistent code.

Plus, adding poor documentation to this. Yes, to understand C++ code can be very difficult.

My opinion on the topic is that the abstraction comes at a cost of hidden implementation. Such hidden implementation must have good, proper documentation, or readable interface. If programming with OOP, the programmer must think in OOP, not C procedural way.

And few words about interfacing again.
When I agitate for the interfaces I usually mean by this: OK, your code is good at what it does and does it well(or you think it does well), give me proper and documented interface so that I can understand how to use it and apply in real life. If you do not do this, I must read your code(oh no!) and understand how it works(isn't it the problem that your code is aimed to solve?!!), so that I make interface in my imagination(!) on how to use your code, eventually I will not remember all the imagined picture and therefore dissatisfy with the code, it can even drive me not to use your code any more, or C++ code in general.


--
Alex Makhotin,
the founder of BITPROX,
http://bitprox.com

Reply via email to