From: davida at pobox.com (David Arnold)
Subject: [COFF] What languges would you like to learn?
Date: Fri, 27 Dec 2019 07:28:27 +1000 [thread overview]
Message-ID: <9DDB7EE9-8E8E-4083-BB36-B15CD784FC3C@pobox.com> (raw)
In-Reply-To: <B9ADAD5D-7EB0-4FB1-930D-C76C9C4238D3@bitblocks.com>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4199 bytes --]
C++ is several different languages in one compiler.
You can use it as a stricter C, as a C with some syntactic support of ADTs, as C++98-style OO, or as a C++17 style meta-programming system. And I’ve probably missed a few.
The resulting complexity requires a lot of discipline to use successfully, especially in a large team.
Java competes pretty successfully with the C++98-style OO subset. C11 now competes with the stricter C subset.
The C++17 feature set competes with ... LISP, maybe? It’s a pretty clear winner for some application areas.
d
> On 27 Dec 2019, at 03:58, Bakul Shah <bakul at bitblocks.com> wrote:
>
> You can write “cleaner C++” but you will also need to read, understand & possibly
> modify other people’s code. But don’t let the naysayers stop you. You must find
> out for yourself! You must speak the native language of the community you want
> to be part of. If you deride their local language and proselytize Esperanto, the
> natives may not take kindly to you!
>
>> On Dec 25, 2019, at 9:43 PM, Wesley Parish <wobblygong at gmail.com> wrote:
>>
>> I will admit the modern version reads a lot more cleanly than the
>> older versions. They finally got rid of the pretense that a C++ header
>> file was the same sort of thing as a C header file.
>>
>> I tried to learn it back in the nineties with one of the Sams Teach
>> Yourself books and Borland's Turbo C++ compiler (before I switched to
>> Linux), but at the end I was still as mystified as before. It took
>> immersion into Java before I finally got the hang of object
>> orientation, and Java's still a lot smaller than C++.
>>
>> A friend wants me to write some utilities for a C++ project he's got,
>> so I figure I may as well help him out. Otherwise I'd be just as happy
>> without C++. I'll try to keep the complexity down to the limit
>> suggested by the Unix philosophy - a piece of code that does only one
>> thing and does it well. :)
>>
>> Wesley Parish
>>
>>> On 12/26/19, Larry McVoy <lm at mcvoy.com> wrote:
>>>> On Thu, Dec 26, 2019 at 02:44:06PM +1100, Dave Horsfall wrote:
>>>>>> On Thu, 26 Dec 2019, Wesley Parish wrote:
>>>>>
>>>>>> I'm thinking of finally learning C++. [...]
>>>>>
>>>>> C++? That way lies madness :-) I had to teach myself it once (with the
>>>>> aid
>>>>> of The Book) and was glad to leave it behind. Oh, it was also the
>>>>> first OO lang that I'd ever used, which probably didn't help.
>>>>>
>>>>> I can still read it, bot no way will I go back to writing in it...
>>>
>>> Amen, brother. Bell Labs did some great things, a lot of great things,
>>> but C++ is not one of them.
>>>
>>> I read the book and wanted to like it, I liked how constructors/destructors
>>> stacked, that seemed elegant to me. I wanted that for all the methods and
>>> soon found out only allocation/deallocation stacked. That seemed lame.
>>>
>>> C++ seems to encourage complexity and I hate complexity. I tolerate
>>> it when there is no other way, but as my math kids say, if you have the
>>> right answer, it is beautiful and simple. Complex is reserved for when
>>> you haven't figured it out yet. That's not totally fair, I've written
>>> some complex code but I did have the nagging feeling there must be a
>>> simpler way.
>>>
>>> C++ teams are riddled with rules "don't use this, don't use that". It's
>>> an interesting language to look at but I'll choose C over C++ every time.
>>> You can fake OO in C, Sun did it with vnodes and it worked just fine. I'd
>>> rather fake it and have it be simple than have C++ and have it be weird.
>>>
>>> That might be me just being an old fart but I have yet to have someone
>>> I admire tell me I need to use C++.
>>> _______________________________________________
>>> COFF mailing list
>>> COFF at minnie.tuhs.org
>>> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>>>
>> _______________________________________________
>> COFF mailing list
>> COFF at minnie.tuhs.org
>> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>
> _______________________________________________
> COFF mailing list
> COFF at minnie.tuhs.org
> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
next prev parent reply other threads:[~2019-12-26 21:28 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-23 23:27 cym224
2019-12-24 9:54 ` thomas.paulsen
2019-12-24 16:28 ` toby
2019-12-24 16:35 ` lm
2019-12-24 17:50 `
2019-12-24 18:04 ` lm
2019-12-25 3:34 ` dave
2019-12-25 16:02 ` cym224
2019-12-25 17:05 ` thomas.paulsen
2019-12-24 20:27 ` dave
2019-12-25 17:31 ` rtomek
2019-12-25 19:13 ` athornton
2019-12-26 0:23 ` me
2019-12-26 1:54 ` wobblygong
2019-12-26 3:44 ` dave
2019-12-26 4:00 ` lm
2019-12-26 5:43 ` wobblygong
2019-12-26 11:49 ` tih
2019-12-26 15:33 ` lm
2019-12-26 16:34 ` thomas.paulsen
2019-12-26 16:53 ` lm
2019-12-27 3:00 ` dave
2019-12-27 7:02 ` thomas.paulsen
2019-12-26 17:57 ` bakul
2019-12-26 21:28 ` davida [this message]
2019-12-26 21:37 ` lm
2019-12-26 21:57 ` sauer
2019-12-26 22:13 `
2019-12-27 3:41 ` bakul
2019-12-27 4:00 ` lm
2019-12-27 4:28 ` bakul
2019-12-26 22:16 ` imp
2019-12-27 3:41 ` bakul
2019-12-26 15:43 ` dfawcus+lists-coff
2019-12-27 17:46 ` cym224
2019-12-27 21:33 ` tih
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9DDB7EE9-8E8E-4083-BB36-B15CD784FC3C@pobox.com \
--to=coff@minnie.tuhs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).