On 09/16/2014 05:45 PM, FRIGN wrote:
> On Tue, 16 Sep 2014 17:25:02 -0500
> Jimmie Houchin <jlhouchin_AT_gmail.com> wrote:
>
> Hey Jimmie,
>
>> Seeing how much C++ people complain about the C like stuff or the actual
>> C stuff in C++. Why don't they just grow a pair and clean out all the
>> stuff they complain about. Simplify the language and get on with it. As
>> it is, is seems as if is just growing and nothing gets removed. Only new
>> books saying don't use the old stuff. If you don't want it used then
>> remove it. Ugh!
> Because it's one of C++'s design goals to be backwards-compatible to C.
> It's the only thing I'd attribute to the C language.
> Given this design-goal, the result has been pretty remarkable.
For me this is exactly where they need to figure out who they are or who
they want to be.
Being source code compatible with C is somewhat a violation of:
http://en.wikipedia.org/wiki/C%2B%2B
There should be no language beneath C++ (except assembly language).
http://www.stroustrup.com/bs_faq.html
"Within C++, there is a much smaller and cleaner language struggling to
get out".
Yes, that quote can be found on page 207 of The Design and Evolution of C++.
You can't maintain source code compatibility without having C inside of
C++. And if you have C inside of C++, then you have a language beneath
C++. Since they consider C++ to be higher level than C. And they exhort
profusely that you should not program in a C style.
The smaller and cleaner language will never ever get out, if it only
keeps getting bigger and nothing ever gets removed.
Now, it would not be difficult to maintain C binary compatibility. Lots
of languages do.
It seems to me that what they really need to develop the courage to do
is this. For the C++17 standard. Decide on what that smaller and cleaner
language should be. Make strong deprecations and warnings for use of
stuff outside of the smaller, cleaner C++, but still compile if that is
the users wish. Then create a C++20 (or so) standard and remove all of
that stuff. If you are C++ developer and you like and want all of that
stuff outside of the smaller, cleaner C++. Stick with C++17 and earlier.
So they either need to change their philosophy of now language beneath
C++. Give up their desire of a smaller, cleaner C++. Or just give in to
being the beast they have and are creating. They need to go under the knife.
If at some point they don't gain the courage, they with have an ever
increasing monster. And an ever increasing publishing industry based
around what not to do in C++. :)
They are already well down this road.
They didn't ask my opinion, but oh well.
> But apart from that, I need a programming language to solve problems for
> me efficiently.
> And no other language has surpassed C for me (by far!).
> Many of those apologetics trying to sweet-talk C++ are actually quite
> obsessed with the fact they wasted years learning a language no human
> can possibly learn to the fullest.
And to me that is one of the attractive things about C vs C++. I believe
over time I can fit C in my head. C++ not so much. And by the time
anybody gets enough of their head wrapped around it, it probably has
grown and changed again.
> The strongest argument for me against C++ is not a technical one, but
> the fact that you are forced to program in subsets.
> This leads to the problem that new developers planning on contributing
> to a project might have problems with adapting to it because it uses
> a different subset of the C++-language than they are accustomed to.
This is what scared me in considering C++. I control my own code. I can
easily program in that self-defined C++ sweet spot. But I am required to
use other people's libraries. I may have to read other peoples code. I
then have to step out of my choices into theirs. Then I could have
undefined consequences or headaches.
> I personally started with C++ a few years back when I began with system
> programming.
> The more I do with C and read about the problems C++-developers have,
> I'm glad about having made the switch to C, even though it was harder
> to learn in the beginning.
I hope I too can have a good C experience.
>> My apologies for the mini-rant. And Hi! First time poster to suckless.
>> Thanks for having a group which fights against the current direction in
>> complexity in software.
> You're welcome.
>
> Cheers
>
> FRIGN
Jimmie
Received on Wed Sep 17 2014 - 23:15:52 CEST