Computer Old Farts Forum
 help / color / mirror / Atom feed
From: bakul at bitblocks.com (Bakul Shah)
Subject: [COFF] What languges would you like to learn?
Date: Thu, 26 Dec 2019 19:41:18 -0800	[thread overview]
Message-ID: <906BFA27-33C7-47A4-A814-7E7146B48B5C@bitblocks.com> (raw)
In-Reply-To: <9DDB7EE9-8E8E-4083-BB36-B15CD784FC3C@pobox.com>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 5819 bytes --]

I of course agree that C++ is quite complex but the point I
was jokingly making is this: if you just want to study a
language for the sake of studying, any language that interests
you is fine. Just do it; find out for yourself if it is worth
studying.  But if you want to write useful code in it, the
context matters.

If I want to contribute to a project using Java, I have to use
Java.  If I want to write a program where most of the
essential libraries are in C++, it may make more sense to use
C++ (or I have to use a language that has a decent FFI or
write all of the equivalent code in my language of choice). Or
only interface to other components via network protocols.  At
a prev. job I rewrote the C++ program I was supposed to fix in
Go mainly because of the last condition.

Another factor is this: if someone else is going to have to
continue maintaining your code once you move on, you'd better
use a language that is somewhat popular. A friend wrote all
his code in CL for a non-profit org but at some point he had
to give up control and the people who took over threw out all
his code and implemented something worse but using common
technologies. And I don't think my friend really saved any
time; he was just scratching an itch.

But no need to insult Lisp :-) CL is a fairly well thought out
language (and I say that as a fan of Scheme and not CL). What
matters is not design by committee but *who* is on the
committee!

On Dec 26, 2019, at 1:28 PM, David Arnold <davida at pobox.com> wrote:
> 
> 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
> 



  parent reply	other threads:[~2019-12-27  3:41 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
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 [this message]
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=906BFA27-33C7-47A4-A814-7E7146B48B5C@bitblocks.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).