• "Brian Kernigan speaks. 83 and still teaching."

    From Lynn McGuire@lynnmcguire5@gmail.com to comp.lang.c,comp.lang.c++ on Mon Sep 1 23:39:00 2025
    From Newsgroup: comp.lang.c++

    "Brian Kernigan speaks. 83 and still teaching."

    "The Rust believers are not going to be happy with the answer to one question."
    https://www.youtube.com/watch?v=WEb_YL1K1Qg

    "At one point during the Q&A, his VPN fails. GlobalProtect. No further comment."

    Lynn

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lynn McGuire@lynnmcguire5@gmail.com to comp.lang.c,comp.lang.c++ on Tue Sep 2 20:34:46 2025
    From Newsgroup: comp.lang.c++

    On 9/1/2025 11:39 PM, Lynn McGuire wrote:
    "Brian Kernigan speaks. 83 and still teaching."

    "The Rust believers are not going to be happy with the answer to one question."
    -a-a https://www.youtube.com/watch?v=WEb_YL1K1Qg

    "At one point during the Q&A, his VPN fails. GlobalProtect. No further comment."

    Lynn

    I learned C from the original K&R C book, about 1985 or so. Here is the second edition, the ANSI version.

    https://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628

    Lynn


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Pierre@null@void.net to comp.lang.c,comp.lang.c++ on Wed Sep 3 22:20:48 2025
    From Newsgroup: comp.lang.c++

    In comp.lang.c Lynn McGuire <lynnmcguire5@gmail.com> wrote:
    "Brian Kernigan speaks. 83 and still teaching."

    "The Rust believers are not going to be happy with the answer to one question."
    https://www.youtube.com/watch?v=WEb_YL1K1Qg

    "At one point during the Q&A, his VPN fails. GlobalProtect. No further comment."

    Lynn


    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks! Unfortunately, it's all too true."


    Pierre
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Bonita Montero@Bonita.Montero@gmail.com to comp.lang.c,comp.lang.c++ on Thu Sep 4 02:10:40 2025
    From Newsgroup: comp.lang.c++

    Am 04.09.2025 um 00:20 schrieb Pierre:
    In comp.lang.c Lynn McGuire <lynnmcguire5@gmail.com> wrote:
    "Brian Kernigan speaks. 83 and still teaching."

    "The Rust believers are not going to be happy with the answer to one
    question."
    https://www.youtube.com/watch?v=WEb_YL1K1Qg

    "At one point during the Q&A, his VPN fails. GlobalProtect. No further
    comment."

    Lynn


    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks! Unfortunately, it's all too true."

    Yes, and a large part of it because it is written in C.
    Five times the code as in C++ or Rust and the same degree of more bugs.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From scott@scott@slp53.sl.home (Scott Lurndal) to comp.lang.c,comp.lang.c++ on Thu Sep 4 00:12:06 2025
    From Newsgroup: comp.lang.c++

    Bonita Montero <Bonita.Montero@gmail.com> writes:
    Am 04.09.2025 um 00:20 schrieb Pierre:
    In comp.lang.c Lynn McGuire <lynnmcguire5@gmail.com> wrote:
    "Brian Kernigan speaks. 83 and still teaching."

    "The Rust believers are not going to be happy with the answer to one
    question."
    https://www.youtube.com/watch?v=WEb_YL1K1Qg

    "At one point during the Q&A, his VPN fails. GlobalProtect. No further
    comment."

    Lynn


    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks! Unfortunately, it's all too true."

    Yes, and a large part of it because it is written in C.

    Nonsense.

    It sucks due to design, not implementation.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Kaz Kylheku@643-408-1753@kylheku.com to comp.lang.c,comp.lang.c++ on Thu Sep 4 02:30:30 2025
    From Newsgroup: comp.lang.c++

    On 2025-09-04, Scott Lurndal <scott@slp53.sl.home> wrote:
    Bonita Montero <Bonita.Montero@gmail.com> writes:
    Am 04.09.2025 um 00:20 schrieb Pierre:
    In comp.lang.c Lynn McGuire <lynnmcguire5@gmail.com> wrote:
    "Brian Kernigan speaks. 83 and still teaching."

    "The Rust believers are not going to be happy with the answer to one
    question."
    https://www.youtube.com/watch?v=WEb_YL1K1Qg

    "At one point during the Q&A, his VPN fails. GlobalProtect. No further >>>> comment."

    Lynn


    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks! Unfortunately, it's all too true."

    Yes, and a large part of it because it is written in C.

    Nonsense.

    It sucks due to design, not implementation.

    The concepts of "design" and "implementation" are tidy abstractions in the study of software engineering.

    IN the practice of software engineering they are not separable.

    For instance, a development situation may take it for granted that a
    certain tech stack will be used. That the informs some of the content of
    the design.

    Perhaps not the highest levels (e.g. use cases like "user deposits money
    via ATM") but once you get into detail, designs are become thoroughly
    soaked in implementation concepts.
    --
    TXR Programming Language: http://nongnu.org/txr
    Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
    Mastodon: @Kazinator@mstdn.ca
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From boltar@boltar@caprica.universe to comp.lang.c,comp.lang.c++ on Thu Sep 4 08:36:37 2025
    From Newsgroup: comp.lang.c++

    On Thu, 4 Sep 2025 02:10:40 +0200
    Bonita Montero <Bonita.Montero@gmail.com> gabbled:
    Am 04.09.2025 um 00:20 schrieb Pierre:
    In comp.lang.c Lynn McGuire <lynnmcguire5@gmail.com> wrote:
    "Brian Kernigan speaks. 83 and still teaching."

    "The Rust believers are not going to be happy with the answer to one
    question."
    https://www.youtube.com/watch?v=WEb_YL1K1Qg

    "At one point during the Q&A, his VPN fails. GlobalProtect. No further
    comment."

    Lynn


    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks! Unfortunately, it's all too true."

    Yes, and a large part of it because it is written in C.
    Five times the code as in C++ or Rust and the same degree of more bugs.

    The C++ code will be in the libraries but the amount of code will be more
    or less the same.

    I'd love to hear his opinion of the designed-by-committee syntatic horror that is modern C++.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Janis Papanagnou@janis_papanagnou+ng@hotmail.com to comp.lang.c,comp.lang.c++ on Thu Sep 4 12:40:37 2025
    From Newsgroup: comp.lang.c++

    On 04.09.2025 10:36, boltar@caprica.universe wrote:
    On Thu, 4 Sep 2025 02:10:40 +0200
    Bonita Montero <Bonita.Montero@gmail.com> gabbled:
    Am 04.09.2025 um 00:20 schrieb Pierre:
    In comp.lang.c Lynn McGuire <lynnmcguire5@gmail.com> wrote:
    "Brian Kernigan speaks. 83 and still teaching."

    "The Rust believers are not going to be happy with the answer to one
    question."

    His comment on Rust wasn't backed up by much experience, but his
    statement on his personal practical experience was, also not too
    surprising, very interesting to hear.

    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks! Unfortunately, it's all too true."

    (Everyday experience. *sigh*. Yes.)

    Yes, and a large part of it because it is written in C.
    Five times the code as in C++ or Rust and the same degree of more bugs.

    The C++ code will be in the libraries but the amount of code will be more
    or less the same.

    I'm not sure whether you are referring to the final binary or the
    plain "C" vs. C++ code.

    Since in C++ the higher level code is supported by language and
    powerful libraries it's IME typically terser to write, and easier
    to use and combine. (YMMV)

    With a full blown _complete_ interface implementation (I mean all
    elements for an orthogonal use of an implementation) I typically
    have a lot of code in C++, though. (Code that I typically wouldn't
    have implemented in "C". So it's not directly comparable.)


    I'd love to hear his opinion of the designed-by-committee syntatic
    horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?

    Janis

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From boltar@boltar@caprica.universe to comp.lang.c,comp.lang.c++ on Thu Sep 4 15:57:30 2025
    From Newsgroup: comp.lang.c++

    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe wrote:
    I'd love to hear his opinion of the designed-by-committee syntatic
    horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?

    C's syntax might not be the best, but its relatively simple. C++ syntax is
    a dogs dinner and gets worse everytime the steering committee farts out a
    new version every 3 years with increasingly niche and obscure functionality. Some C++ code now is virtually unparsable by the human eye and a lot of the
    new crap are meta keywords that are compiler directives or hints rather than code that actually does something. eg:

    swappable
    swappable_with
    destructible
    constructible_from
    default_initializable

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From =?UTF-8?B?8J+HtfCfh7FKYWNlayBNYXJjaW4gSmF3b3Jza2nwn4e18J+HsQ==?=@jaworski1978@adres.pl to comp.lang.c,comp.lang.c++ on Thu Sep 4 18:33:11 2025
    From Newsgroup: comp.lang.c++

    W dniu 4.09.2025 o-a04:30, Kaz Kylheku pisze:
    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks! Unfortunately, it's all too true."
    Yes, and a large part of it because it is written in C.
    Nonsense.

    It sucks due to design, not implementation.
    The concepts of "design" and "implementation" are tidy abstractions in the study of software engineering.

    IN the practice of software engineering they are not separable.

    BS! Behind every genius prog. or tool is some brilliant idea. That is
    the first step of design. All engineering art require detailed and aware design. If some body program in other way, then result can be one: piece
    of c* .
    --
    Have a nice day!
    Jacek Marcin Jaworski, Pruszcz Gd., woj. Pomorskie, PLEfc|Efc#, EUEfc-Efc|;
    tel.: +48-609-170-742, najlepiej w godz.: 5:00-5:25 lub 16:00-16:55; <jaworski1978@adres.pl>, gpg: EBFD1A464130993FBBC230FE221740E87CE10580;
    Domowa s. WWW (WYSZUKIWARKI J-a POMIJAJ-a!!!): <https://energokod.pl>;
    Mini Netykieta: <https://energokod.pl/MiniNetykieta.html>; Mailowa Samoobrona: <https://emailselfdefense.fsf.org/pl>.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Michael S@already5chosen@yahoo.com to comp.lang.c,comp.lang.c++ on Fri Sep 5 00:36:46 2025
    From Newsgroup: comp.lang.c++

    On Thu, 4 Sep 2025 18:33:11 +0200
    Efc|Efc#Jacek Marcin JaworskiEfc|Efc# <jaworski1978@adres.pl> wrote:
    W dniu 4.09.2025 o-a04:30, Kaz Kylheku pisze:
    I liked his reply to the question about the current state of
    software today:

    "A lot of it sucks! Unfortunately, it's all too true."
    Yes, and a large part of it because it is written in C.
    Nonsense.

    It sucks due to design, not implementation.
    The concepts of "design" and "implementation" are tidy abstractions
    in the study of software engineering.

    IN the practice of software engineering they are not separable.

    BS! Behind every genius prog. or tool is some brilliant idea. That is
    the first step of design. All engineering art require detailed and
    aware design. If some body program in other way, then result can be
    one: piece of c* .

    Kaz is right.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Bonita Montero@Bonita.Montero@gmail.com to comp.lang.c,comp.lang.c++ on Thu Sep 4 23:40:11 2025
    From Newsgroup: comp.lang.c++

    Am 04.09.2025 um 10:36 schrieb boltar@caprica.universe:
    On Thu, 4 Sep 2025 02:10:40 +0200
    Bonita Montero <Bonita.Montero@gmail.com> gabbled:
    Am 04.09.2025 um 00:20 schrieb Pierre:
    In comp.lang.c Lynn McGuire <lynnmcguire5@gmail.com> wrote:
    "Brian Kernigan speaks. 83 and still teaching."

    "The Rust believers are not going to be happy with the answer to one
    question."
    -a-a-a https://www.youtube.com/watch?v=WEb_YL1K1Qg

    "At one point during the Q&A, his VPN fails. GlobalProtect. No further >>>> comment."

    Lynn


    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks!-a Unfortunately, it's all too true."

    Yes, and a large part of it because it is written in C.
    Five times the code as in C++ or Rust and the same degree of more bugs.

    The C++ code will be in the libraries but the amount of code will be more
    or less the same.

    The amount of generated code yes, but the amount of written coce is
    about five times more.

    I'd love to hear his opinion of the designed-by-committee syntatic
    horror that is modern C++.


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Janis Papanagnou@janis_papanagnou+ng@hotmail.com to comp.lang.c,comp.lang.c++ on Fri Sep 5 05:42:15 2025
    From Newsgroup: comp.lang.c++

    On 04.09.2025 17:57, boltar@caprica.universe wrote:
    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe wrote:
    I'd love to hear his opinion of the designed-by-committee syntatic
    horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?

    C's syntax might not be the best, but its relatively simple. C++ syntax is
    a dogs dinner and gets worse everytime the steering committee farts out a new version every 3 years with increasingly niche and obscure functionality. Some C++ code now is virtually unparsable by the human eye and a lot of the new crap are meta keywords that are compiler directives or hints rather than code that actually does something. eg:

    swappable
    swappable_with
    destructible
    constructible_from
    default_initializable


    Thanks for clarifying. - I stopped my professional use of C++ with
    this millennium. The last standard that came to my attention was
    something like "C++0x/C++11" (IIRC, with move semantics, and some
    such). While I understand the motivation for introduction of such
    things I already found the syntax, the implications on readability,
    and the complexity a problem back then. I can think that this state
    of language may repel at least the younger programmer's generation
    and foster them turning to other (syntactical cleaner and simpler)
    languages. Programmers that grew up with "C" and C++ might be more
    stressable since they need only accommodate to the language deltas.

    WRT C's contribution I agree that it's comparable simple, but still
    contributes not insignificantly to the "syntax horror". It might be
    more an issue for folks who are also used to non-"C"-like languages.

    Janis

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From scott@scott@slp53.sl.home (Scott Lurndal) to comp.lang.c,comp.lang.c++ on Fri Sep 5 14:08:42 2025
    From Newsgroup: comp.lang.c++

    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes:
    On 04.09.2025 17:57, boltar@caprica.universe wrote:
    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe wrote:
    I'd love to hear his opinion of the designed-by-committee syntatic
    horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?

    C's syntax might not be the best, but its relatively simple. C++ syntax is >> a dogs dinner and gets worse everytime the steering committee farts out a >> new version every 3 years with increasingly niche and obscure functionality. >> Some C++ code now is virtually unparsable by the human eye and a lot of the >> new crap are meta keywords that are compiler directives or hints rather than
    code that actually does something. eg:

    swappable
    swappable_with
    destructible
    constructible_from
    default_initializable


    Thanks for clarifying. - I stopped my professional use of C++ with
    this millennium. The last standard that came to my attention was
    something like "C++0x/C++11" (IIRC, with move semantics, and some
    such). While I understand the motivation for introduction of such
    things I already found the syntax, the implications on readability,
    and the complexity a problem back then

    Nobody is required to actually use all that cruft. It is still
    possible to write C with classes using even the most modern C++
    suite.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From David Brown@david.brown@hesbynett.no to comp.lang.c,comp.lang.c++ on Fri Sep 5 16:51:32 2025
    From Newsgroup: comp.lang.c++

    On 05/09/2025 16:08, Scott Lurndal wrote:
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes:
    On 04.09.2025 17:57, boltar@caprica.universe wrote:
    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe wrote:
    I'd love to hear his opinion of the designed-by-committee syntatic
    horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?

    C's syntax might not be the best, but its relatively simple. C++ syntax is >>> a dogs dinner and gets worse everytime the steering committee farts out a >>> new version every 3 years with increasingly niche and obscure functionality.
    Some C++ code now is virtually unparsable by the human eye and a lot of the >>> new crap are meta keywords that are compiler directives or hints rather than
    code that actually does something. eg:

    swappable
    swappable_with
    destructible
    constructible_from
    default_initializable


    Thanks for clarifying. - I stopped my professional use of C++ with
    this millennium. The last standard that came to my attention was
    something like "C++0x/C++11" (IIRC, with move semantics, and some
    such). While I understand the motivation for introduction of such
    things I already found the syntax, the implications on readability,
    and the complexity a problem back then

    Nobody is required to actually use all that cruft. It is still
    possible to write C with classes using even the most modern C++
    suite.

    Indeed.

    Much of those sorts of things are useful for writing high-performance
    general purpose containers and other such flexible libraries. For most
    user code, you don't need more than a fraction of what C++ provides (but /which/ fraction will depend on the user).

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From boltar@boltar@caprica.universe to comp.lang.c,comp.lang.c++ on Fri Sep 5 15:17:50 2025
    From Newsgroup: comp.lang.c++

    On Fri, 5 Sep 2025 16:51:32 +0200
    David Brown <david.brown@hesbynett.no> gabbled:
    On 05/09/2025 16:08, Scott Lurndal wrote:
    Nobody is required to actually use all that cruft. It is still
    possible to write C with classes using even the most modern C++
    suite.

    Indeed.

    Much of those sorts of things are useful for writing high-performance >general purpose containers and other such flexible libraries. For most
    user code, you don't need more than a fraction of what C++ provides (but >/which/ fraction will depend on the user).

    If only life were that simple. If it exists someone WILL use it and if you're
    a professional dev you'll be expected to know it and be able to maintain the code. Whats more, job interviews often throw in questions or even code writing exercises about the latest and greatest C++ functionality. Its no good only knowing up to C++17 if you're going to an interview in 2025.

    Of course it works the other way too - a C++ dev who knows everything about concepts and co-routines but doesn't know one end of a pointer from the other won't be getting many jobs either.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From wij@wyniijj5@gmail.com to comp.lang.c++ on Sat Sep 6 00:41:25 2025
    From Newsgroup: comp.lang.c++

    On Fri, 2025-09-05 at 16:51 +0200, David Brown wrote:
    On 05/09/2025 16:08, Scott Lurndal wrote:
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes:
    On 04.09.2025 17:57, boltar@caprica.universe-awrote:
    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe-awrote:
    I'd love to hear his opinion of the designed-by-committee syntatic horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?

    C's syntax might not be the best, but its relatively simple. C++ syntax is
    a dogs dinner and gets worse everytime the steering committee farts out a
    new version every 3 years with increasingly niche and obscure functionality.
    Some C++ code now is virtually unparsable by the human eye and a lot of the
    new crap are meta keywords that are compiler directives or hints rather than
    code that actually does something. eg:

    swappable
    swappable_with-a
    destructible-a
    constructible_from-a
    default_initializable


    Thanks for clarifying. - I stopped my professional use of C++ with
    this millennium. The last standard that came to my attention was something like "C++0x/C++11" (IIRC, with move semantics, and some
    such). While I understand the motivation for introduction of such
    things I already found the syntax, the implications on readability,
    and the complexity a problem back then

    Nobody is required to actually use all that cruft.-a It is still
    possible to write C with classes using even the most modern C++
    suite.

    Indeed.

    Much of those sorts of things are useful for writing high-performance general purpose containers and other such flexible libraries.-a For most user code, you don't need more than a fraction of what C++ provides (but /which/ fraction will depend on the user).
    Using newer features of C++ makes the user codes practically less portable and less maintainable, particularly when less new codes are written in C++ and when-a
    there are many ways to implement the 'new feature'.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From wij@wyniijj5@gmail.com to comp.lang.c++ on Sat Sep 6 00:41:43 2025
    From Newsgroup: comp.lang.c++

    On Fri, 2025-09-05 at 16:51 +0200, David Brown wrote:
    On 05/09/2025 16:08, Scott Lurndal wrote:
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes:
    On 04.09.2025 17:57, boltar@caprica.universe-awrote:
    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe-awrote:
    I'd love to hear his opinion of the designed-by-committee syntatic horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?

    C's syntax might not be the best, but its relatively simple. C++ syntax is
    a dogs dinner and gets worse everytime the steering committee farts out a
    new version every 3 years with increasingly niche and obscure functionality.
    Some C++ code now is virtually unparsable by the human eye and a lot of the
    new crap are meta keywords that are compiler directives or hints rather than
    code that actually does something. eg:

    swappable
    swappable_with-a
    destructible-a
    constructible_from-a
    default_initializable


    Thanks for clarifying. - I stopped my professional use of C++ with
    this millennium. The last standard that came to my attention was something like "C++0x/C++11" (IIRC, with move semantics, and some
    such). While I understand the motivation for introduction of such
    things I already found the syntax, the implications on readability,
    and the complexity a problem back then

    Nobody is required to actually use all that cruft.-a It is still
    possible to write C with classes using even the most modern C++
    suite.

    Indeed.

    Much of those sorts of things are useful for writing high-performance general purpose containers and other such flexible libraries.-a For most user code, you don't need more than a fraction of what C++ provides (but /which/ fraction will depend on the user).
    Using newer features of C++ makes the user codes practically less portable and less maintainable, particularly when less new codes are written in C++ and when-a
    there are many ways to implement the 'new feature'.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lynn McGuire@lynnmcguire5@gmail.com to comp.lang.c,comp.lang.c++ on Fri Sep 5 13:58:03 2025
    From Newsgroup: comp.lang.c++

    On 9/5/2025 9:08 AM, Scott Lurndal wrote:
    ...
    Thanks for clarifying. - I stopped my professional use of C++ with
    this millennium. The last standard that came to my attention was
    something like "C++0x/C++11" (IIRC, with move semantics, and some
    such). While I understand the motivation for introduction of such
    things I already found the syntax, the implications on readability,
    and the complexity a problem back then

    Nobody is required to actually use all that cruft. It is still
    possible to write C with classes using even the most modern C++
    suite.

    Which I do with my 450,000 lines of C++ code plus the basic collections
    in the STL.

    I am still moving my 800,000 lines of F77 to C++ using this strategy also.

    Lynn


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From James Kuyper@jameskuyper@alumni.caltech.edu to comp.lang.c,comp.lang.c++ on Fri Sep 5 17:34:34 2025
    From Newsgroup: comp.lang.c++

    On 2025-09-04 23:42, Janis Papanagnou wrote:
    WRT C's contribution I agree that it's comparable simple, but still
    contributes not insignificantly to the "syntax horror". It might be
    more an issue for folks who are also used to non-"C"-like languages.

    As someone who's second computer language was APL, which I loved, I
    reserve the concept of "syntax horror" for things like COBOL. I've heard
    that one of the concepts behind the design of COBOL is that it should
    allow managers to write programs, obviating the need for specialized programmers. I've heard the same thing about assembly language, when it
    first came out (I heard it third hand - I'm not quite that old).

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lew Pitcher@lew.pitcher@digitalfreehold.ca to comp.lang.c,comp.lang.c++ on Fri Sep 5 21:55:01 2025
    From Newsgroup: comp.lang.c++

    On Fri, 05 Sep 2025 17:34:34 -0400, James Kuyper wrote:

    On 2025-09-04 23:42, Janis Papanagnou wrote:
    WRT C's contribution I agree that it's comparable simple, but still
    contributes not insignificantly to the "syntax horror". It might be
    more an issue for folks who are also used to non-"C"-like languages.

    As someone who's second computer language was APL, which I loved, I
    reserve the concept of "syntax horror" for things like COBOL. I've heard
    that one of the concepts behind the design of COBOL is that it should
    allow managers to write programs, obviating the need for specialized programmers.

    While CODASYL might have claimed to business that COBOL would let managers write code, that was never the actual case. What the COBOL syntax did was permit /programmers/ to write code that mirrored the business processes
    that the front-line staff performed. If an accountant computed sales tax
    by multiplying the total cost by a fixed percent, the programmer could easily code that as
    MULTIPLY TOTAL-COST BY FIXED_PERCENT GIVING SALES-TAX.
    and the front-line staff could confirm (or deny) that /that/ was the process they followed.

    While wordy, COBOL is still a Turing-complete language, and anything that you can do in C, you can do (granted, not as susinctly) in COBOL.

    I've heard the same thing about assembly language, when it
    first came out (I heard it third hand - I'm not quite that old).

    AFAICT, Assembly language was never touted as a language that managers could write.
    Having written a lot of Assembly in my time, I can safely say that only the managers
    that started off as Assembly programmers could read and write Assembly code.
    --
    Lew Pitcher
    "In Skills We Trust"
    Not LLM output - I'm just like this.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Janis Papanagnou@janis_papanagnou+ng@hotmail.com to comp.lang.c,comp.lang.c++ on Sat Sep 6 01:14:26 2025
    From Newsgroup: comp.lang.c++

    On 05.09.2025 16:08, Scott Lurndal wrote:
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes:
    On 04.09.2025 17:57, boltar@caprica.universe wrote:
    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe wrote:
    I'd love to hear his opinion of the designed-by-committee syntatic
    horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?

    C's syntax might not be the best, but its relatively simple. C++ syntax is >>> a dogs dinner and gets worse everytime the steering committee farts out a >>> new version every 3 years with increasingly niche and obscure functionality.
    Some C++ code now is virtually unparsable by the human eye and a lot of the >>> new crap are meta keywords that are compiler directives or hints rather than
    code that actually does something. eg:

    swappable
    swappable_with
    destructible
    constructible_from
    default_initializable


    Thanks for clarifying. - I stopped my professional use of C++ with
    this millennium. The last standard that came to my attention was
    something like "C++0x/C++11" (IIRC, with move semantics, and some
    such). While I understand the motivation for introduction of such
    things I already found the syntax, the implications on readability,
    and the complexity a problem back then

    Nobody is required to actually use all that cruft. It is still
    possible to write C with classes using even the most modern C++
    suite.

    I don't think this statement addresses the key point of the poster
    in any substantial way. You can also write your programs in Modula
    and have then got rid even of the remaining "C" "cruft" (as it had
    been formulated).

    The point is that if you learn C++ you typically won't buy a book
    of the year's 1990 state of play. And if you're confronted with C++
    software created from other people you can't just ignore what they
    used as feature set; and my experience is that especially younger
    folks use what's provided as features in any language.

    Any isolated individual is not the measure of things when speaking
    about "syntax horrors"; neither as producer nor as consumer of the
    respective software or programming language "cruft". The post made
    a (valid) statement about language design and language evolution.

    Janis

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Janis Papanagnou@janis_papanagnou+ng@hotmail.com to comp.lang.c,comp.lang.c++ on Sat Sep 6 01:39:03 2025
    From Newsgroup: comp.lang.c++

    On 05.09.2025 23:55, Lew Pitcher wrote:
    On Fri, 05 Sep 2025 17:34:34 -0400, James Kuyper wrote:

    On 2025-09-04 23:42, Janis Papanagnou wrote:
    WRT C's contribution I agree that it's comparable simple, but still
    contributes not insignificantly to the "syntax horror". It might be
    more an issue for folks who are also used to non-"C"-like languages.

    As someone who's second computer language was APL, which I loved, I
    reserve the concept of "syntax horror" for things like COBOL.

    Well, on my scale INTERCAL is on that far end. And if you ask me where
    I'd sort in COBOL or C - I'm not that sure that COBOL would be closer;
    you can at least write readable code in COBOL.

    [...]

    While CODASYL might have claimed to business that COBOL would let managers write code, that was never the actual case. What the COBOL syntax did was permit /programmers/ to write code that mirrored the business processes
    that the front-line staff performed. If an accountant computed sales tax
    by multiplying the total cost by a fixed percent, the programmer could easily code that as
    MULTIPLY TOTAL-COST BY FIXED_PERCENT GIVING SALES-TAX.

    Or something like

    COMPUTE SALES-TAX = TOTAL-COST * FIXED-PERCENT

    (with a syntax that might mollify James a bit).

    and the front-line staff could confirm (or deny) that /that/ was the process they followed.

    While wordy, COBOL is still a Turing-complete language, and anything that you can do in C, you can do (granted, not as susinctly) in COBOL.

    Janis

    [...]
    [...]


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From scott@scott@slp53.sl.home (Scott Lurndal) to comp.lang.c,comp.lang.c++ on Sat Sep 6 17:46:54 2025
    From Newsgroup: comp.lang.c++

    Lew Pitcher <lew.pitcher@digitalfreehold.ca> writes:
    On Fri, 05 Sep 2025 17:34:34 -0400, James Kuyper wrote:

    On 2025-09-04 23:42, Janis Papanagnou wrote:
    WRT C's contribution I agree that it's comparable simple, but still
    contributes not insignificantly to the "syntax horror". It might be
    more an issue for folks who are also used to non-"C"-like languages.

    As someone who's second computer language was APL, which I loved, I
    reserve the concept of "syntax horror" for things like COBOL. I've heard
    that one of the concepts behind the design of COBOL is that it should
    allow managers to write programs, obviating the need for specialized
    programmers.

    While CODASYL might have claimed to business that COBOL would let managers >write code, that was never the actual case. What the COBOL syntax did was >permit /programmers/ to write code that mirrored the business processes
    that the front-line staff performed. If an accountant computed sales tax
    by multiplying the total cost by a fixed percent, the programmer could easily >code that as
    MULTIPLY TOTAL-COST BY FIXED_PERCENT GIVING SALES-TAX.
    and the front-line staff could confirm (or deny) that /that/ was the process >they followed.

    While wordy, COBOL is still a Turing-complete language, and anything that you >can do in C, you can do (granted, not as susinctly) in COBOL.

    With certain caveats. I.e. the COBOL compiler needs some way to link
    to external assembler functions.,

    Burroughs COBOL 68 compiler had the phrase "ENTER SYMBOLIC.". Source
    lines after that were treated as embedded assembler until "LEAVE SYMBOLIC.".

    The MCP Disk Defragmenter utility was written in COBOL 68.

    The COBOL 74 compiler supported linking (binding) independently compiled modules
    into a single executable, and the ICM was standard across all supported compilers. Most often COBOL74 would call BPL (Burroughs Programming Language) functions to access MCP facilities not supported natively by COBOL syntax.


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lew Pitcher@lew.pitcher@digitalfreehold.ca to comp.lang.c,comp.lang.c++ on Sat Sep 6 18:38:31 2025
    From Newsgroup: comp.lang.c++

    On Sat, 06 Sep 2025 17:46:54 +0000, Scott Lurndal wrote:

    Lew Pitcher <lew.pitcher@digitalfreehold.ca> writes:
    On Fri, 05 Sep 2025 17:34:34 -0400, James Kuyper wrote:

    On 2025-09-04 23:42, Janis Papanagnou wrote:
    WRT C's contribution I agree that it's comparable simple, but still >>>> contributes not insignificantly to the "syntax horror". It might be
    more an issue for folks who are also used to non-"C"-like languages.

    As someone who's second computer language was APL, which I loved, I
    reserve the concept of "syntax horror" for things like COBOL. I've heard >>> that one of the concepts behind the design of COBOL is that it should
    allow managers to write programs, obviating the need for specialized
    programmers.

    While CODASYL might have claimed to business that COBOL would let managers >>write code, that was never the actual case. What the COBOL syntax did was >>permit /programmers/ to write code that mirrored the business processes >>that the front-line staff performed. If an accountant computed sales tax
    by multiplying the total cost by a fixed percent, the programmer could easily >>code that as
    MULTIPLY TOTAL-COST BY FIXED_PERCENT GIVING SALES-TAX.
    and the front-line staff could confirm (or deny) that /that/ was the process >>they followed.

    While wordy, COBOL is still a Turing-complete language, and anything that you >>can do in C, you can do (granted, not as susinctly) in COBOL.

    With certain caveats. I.e. the COBOL compiler needs some way to link
    to external assembler functions.,

    The bog-standard COBOL CALL verb suffices for that, along with a suitable linkage editor or linking loader https://www.ibm.com/docs/en/cobol-zos/6.3.0?topic=statements-call-statement

    Burroughs COBOL 68 compiler had the phrase "ENTER SYMBOLIC.". Source
    lines after that were treated as embedded assembler until "LEAVE SYMBOLIC.".

    The MCP Disk Defragmenter utility was written in COBOL 68.

    The COBOL 74 compiler supported linking (binding) independently compiled modules
    into a single executable, and the ICM was standard across all supported compilers. Most often COBOL74 would call BPL (Burroughs Programming Language)
    functions to access MCP facilities not supported natively by COBOL syntax.

    The last COBOL I worked with supported both static and dynamic load. IBM OS390 was like that (I retired before I got to zOS)
    --
    Lew Pitcher
    "In Skills We Trust"
    Not LLM output - I'm just like this.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Michael S@already5chosen@yahoo.com to comp.lang.c++ on Sun Sep 7 11:16:44 2025
    From Newsgroup: comp.lang.c++

    On Fri, 5 Sep 2025 16:51:32 +0200
    David Brown <david.brown@hesbynett.no> wrote:

    On 05/09/2025 16:08, Scott Lurndal wrote:
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes:
    On 04.09.2025 17:57, boltar@caprica.universe wrote:
    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe wrote:
    I'd love to hear his opinion of the designed-by-committee
    syntatic horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?


    C's syntax might not be the best, but its relatively simple. C++
    syntax is a dogs dinner and gets worse everytime the steering
    committee farts out a new version every 3 years with increasingly
    niche and obscure functionality. Some C++ code now is virtually
    unparsable by the human eye and a lot of the new crap are meta
    keywords that are compiler directives or hints rather than code
    that actually does something. eg:

    swappable
    swappable_with
    destructible
    constructible_from
    default_initializable


    Thanks for clarifying. - I stopped my professional use of C++ with
    this millennium. The last standard that came to my attention was
    something like "C++0x/C++11" (IIRC, with move semantics, and some
    such). While I understand the motivation for introduction of such
    things I already found the syntax, the implications on readability,
    and the complexity a problem back then

    Nobody is required to actually use all that cruft. It is still
    possible to write C with classes using even the most modern C++
    suite.

    Indeed.

    Much of those sorts of things are useful for writing high-performance general purpose containers and other such flexible libraries.

    Disagreed.
    The syntactic innovations that cause "modern C++" to look as different
    language from both original "C with classes" and from following "C with
    classes and templates" are:
    Major:
    1. Lambda expressions
    2. Uniform initialization
    3. Range-based for loop
    4. Attributes
    Minor:
    1. New meaning of auto.

    All of those were introduced in C++11.

    More recent additions with syntax that looks alien are:
    1. Concepts
    2. Three-way comparison
    Happily, those are more specialized and as such less pervasive.


    For
    most user code, you don't need more than a fraction of what C++
    provides (but /which/ fraction will depend on the user).


    Statements like that apply to just about any language or framework.
    Which makes them useless.

    comp.lang.c removed

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From David Brown@david.brown@hesbynett.no to comp.lang.c++ on Sun Sep 7 12:08:08 2025
    From Newsgroup: comp.lang.c++

    On 07/09/2025 10:16, Michael S wrote:
    On Fri, 5 Sep 2025 16:51:32 +0200
    David Brown <david.brown@hesbynett.no> wrote:

    On 05/09/2025 16:08, Scott Lurndal wrote:
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes:
    On 04.09.2025 17:57, boltar@caprica.universe wrote:
    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe wrote:
    I'd love to hear his opinion of the designed-by-committee
    syntatic horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?


    C's syntax might not be the best, but its relatively simple. C++
    syntax is a dogs dinner and gets worse everytime the steering
    committee farts out a new version every 3 years with increasingly
    niche and obscure functionality. Some C++ code now is virtually
    unparsable by the human eye and a lot of the new crap are meta
    keywords that are compiler directives or hints rather than code
    that actually does something. eg:

    swappable
    swappable_with
    destructible
    constructible_from
    default_initializable


    Thanks for clarifying. - I stopped my professional use of C++ with
    this millennium. The last standard that came to my attention was
    something like "C++0x/C++11" (IIRC, with move semantics, and some
    such). While I understand the motivation for introduction of such
    things I already found the syntax, the implications on readability,
    and the complexity a problem back then

    Nobody is required to actually use all that cruft. It is still
    possible to write C with classes using even the most modern C++
    suite.

    Indeed.

    Much of those sorts of things are useful for writing high-performance
    general purpose containers and other such flexible libraries.

    Disagreed.
    The syntactic innovations that cause "modern C++" to look as different language from both original "C with classes" and from following "C with classes and templates" are:
    Major:
    1. Lambda expressions
    2. Uniform initialization
    3. Range-based for loop
    4. Attributes
    Minor:
    1. New meaning of auto.

    All of those were introduced in C++11.


    Yes, these are all new in C++11 onwards. And I agree that they change
    the way C++ looks - and that these are all becoming quite pervasive in "normal" C++ beyond "C with classes".

    More recent additions with syntax that looks alien are:
    1. Concepts
    2. Three-way comparison
    Happily, those are more specialized and as such less pervasive.


    I was thinking more along those lines - and things like fold
    expressions, complicated "noeexcept" expressions, template-template parameters, and moving and forwarding parameters.

    But of course these things are a matter of opinion and subjective uses
    and experience. And there is always the tendency for some of new things
    to appear "alien" but gradually become part of common usage.


    For
    most user code, you don't need more than a fraction of what C++
    provides (but /which/ fraction will depend on the user).


    Statements like that apply to just about any language or framework.
    Which makes them useless.

    comp.lang.c removed


    C would be an example of a language where you /can/ learn the solid
    majority of it, and people use a large proportion of its features in
    everyday coding.

    When I used Borland Pascal, I knew pretty much all of the language.
    When I used BASIC on a variety of 1980's computers, I knew all every
    statement and expression in the languages. When I started with microcontrollers, I knew every assembly instruction and cpu register,
    and knew most of the peripherals in detail. I don't imagine I am alone
    in having that kind of near-complete knowledge of older and smaller
    languages and systems.

    It is certainly true, however, that languages and systems have grown
    massively over the years, and for many modern languages it would be
    completely infeasible for one person to really understand and use more
    than a small part. But you still have a chance for some newer languages
    like Zig or Nim, which make a point of trying to be small enough that
    they don't have features that are not needed on a regular basis.


    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From wij@wyniijj5@gmail.com to comp.lang.c++ on Sun Sep 7 22:16:42 2025
    From Newsgroup: comp.lang.c++

    On Sun, 2025-09-07 at 12:08 +0200, David Brown wrote:
    On 07/09/2025 10:16, Michael S wrote:
    On Fri, 5 Sep 2025 16:51:32 +0200
    David Brown <david.brown@hesbynett.no> wrote:

    On 05/09/2025 16:08, Scott Lurndal wrote:
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes:
    On 04.09.2025 17:57, boltar@caprica.universe-awrote:
    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe-awrote:
    I'd love to hear his opinion of the designed-by-committee syntatic horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also not about the "C" contribution to the "syntactic horror". Right? -a

    C's syntax might not be the best, but its relatively simple. C++ syntax is a dogs dinner and gets worse everytime the steering committee farts out a new version every 3 years with increasingly niche and obscure functionality. Some C++ code now is virtually unparsable by the human eye and a lot of the new crap are meta keywords that are compiler directives or hints rather than code that actually does something. eg:

    swappable
    swappable_with-a
    destructible-a
    constructible_from-a
    default_initializable
    -a

    Thanks for clarifying. - I stopped my professional use of C++ with this millennium. The last standard that came to my attention was something like "C++0x/C++11" (IIRC, with move semantics, and some such). While I understand the motivation for introduction of such things I already found the syntax, the implications on readability, and the complexity a problem back then

    Nobody is required to actually use all that cruft.-a It is still possible to write C with classes using even the most modern C++
    suite.

    Indeed.

    Much of those sorts of things are useful for writing high-performance general purpose containers and other such flexible libraries.

    Disagreed.
    The syntactic innovations that cause "modern C++" to look as different language from both original "C with classes" and from following "C with classes and templates" are:
    Major:
    1. Lambda expressions
    2. Uniform initialization
    3. Range-based for loop
    4. Attributes
    Minor:
    1. New meaning of auto.

    All of those were introduced in C++11.


    Yes, these are all new in C++11 onwards.-a And I agree that they change
    the way C++ looks - and that these are all becoming quite pervasive in "normal" C++ beyond "C with classes".

    More recent additions with syntax that looks alien are:
    1. Concepts
    2. Three-way comparison
    Happily, those are more specialized and as such less pervasive.


    I was thinking more along those lines - and things like fold
    expressions, complicated "noeexcept" expressions, template-template parameters, and moving and forwarding parameters.

    But of course these things are a matter of opinion and subjective uses
    and experience.-a And there is always the tendency for some of new things
    to appear "alien" but gradually become part of common usage.
    That the last sentence is one-sided wish.
    Many 'new things' (not all. some, typically small, are good) are involving-a doing the same thing in 'standardized different' way while every field has their own
    good problem solving logic. That is just one aspect of the problem of redundency.
    Another thing is 'C++' seems always aims at 'small' things that can be done otherwise. E.g. the basic array things (important). Can std::vector, std::array
    be used widely enough, for system programming, even in C++std library itself? The needs for 'vector'(math)/matrix has kept increasing.
    The demand of graphics/sound is always there. And, now, there are 'AI' stuff. C++ dare to touch these topics? No, always things like some piece of code doing
    this way will be 'good'....
    'C++' is ultimately defined by C++ commitee members.
    If it decided to shoot its own feet... It is still C++.
    So, you are right, choose whatever is needed (but that is a problem for C++ beginners).

    For
    most user code, you don't need more than a fraction of what C++
    provides (but /which/ fraction will depend on the user).


    Statements like that apply to just about any language or framework.
    Which makes them useless.

    comp.lang.c removed


    C would be an example of a language where you /can/ learn the solid
    majority of it, and people use a large proportion of its features in everyday coding.

    When I used Borland Pascal, I knew pretty much all of the language.
    When I used BASIC on a variety of 1980's computers, I knew all every statement and expression in the languages.-a When I started with microcontrollers, I knew every assembly instruction and cpu register,
    and knew most of the peripherals in detail.-a I don't imagine I am alone
    in having that kind of near-complete knowledge of older and smaller languages and systems.

    It is certainly true, however, that languages and systems have grown massively over the years, and for many modern languages it would be completely infeasible for one person to really understand and use more
    than a small part.-a But you still have a chance for some newer languages like Zig or Nim, which make a point of trying to be small enough that
    they don't have features that are not needed on a regular basis.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From boltar@boltar@caprica.universe to comp.lang.c++ on Sun Sep 7 14:42:23 2025
    From Newsgroup: comp.lang.c++

    On Sun, 7 Sep 2025 12:08:08 +0200
    David Brown <david.brown@hesbynett.no> gabbled:
    On 07/09/2025 10:16, Michael S wrote:
    Statements like that apply to just about any language or framework.
    Which makes them useless.

    comp.lang.c removed


    C would be an example of a language where you /can/ learn the solid
    majority of it, and people use a large proportion of its features in >everyday coding.

    When I used Borland Pascal, I knew pretty much all of the language.
    When I used BASIC on a variety of 1980's computers, I knew all every >statement and expression in the languages. When I started with >microcontrollers, I knew every assembly instruction and cpu register,

    Modern x86 is a good example of a CPU that is simply not possible for one person to know and understand all the opcodes. Sometimes I wonder if even
    the compilers know them all given some of the assembler I've seen being generated for it. gcc for example seems to have a strange aversion to ever using the FPU opcodes.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From scott@scott@slp53.sl.home (Scott Lurndal) to comp.lang.c++ on Sun Sep 7 15:30:34 2025
    From Newsgroup: comp.lang.c++

    Michael S <already5chosen@yahoo.com> writes:
    On Fri, 5 Sep 2025 16:51:32 +0200
    David Brown <david.brown@hesbynett.no> wrote:

    On 05/09/2025 16:08, Scott Lurndal wrote:
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes:
    On 04.09.2025 17:57, boltar@caprica.universe wrote:
    On Thu, 4 Sep 2025 12:40:37 +0200
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> gabbled:
    On 04.09.2025 10:36, boltar@caprica.universe wrote:
    I'd love to hear his opinion of the designed-by-committee
    syntatic horror that is modern C++.

    You are probably speaking about the newer C++ standards, and also
    not about the "C" contribution to the "syntactic horror". Right?


    C's syntax might not be the best, but its relatively simple. C++
    syntax is a dogs dinner and gets worse everytime the steering
    committee farts out a new version every 3 years with increasingly
    niche and obscure functionality. Some C++ code now is virtually
    unparsable by the human eye and a lot of the new crap are meta
    keywords that are compiler directives or hints rather than code
    that actually does something. eg:

    swappable
    swappable_with
    destructible
    constructible_from
    default_initializable


    Thanks for clarifying. - I stopped my professional use of C++ with
    this millennium. The last standard that came to my attention was
    something like "C++0x/C++11" (IIRC, with move semantics, and some
    such). While I understand the motivation for introduction of such
    things I already found the syntax, the implications on readability,
    and the complexity a problem back then

    Nobody is required to actually use all that cruft. It is still
    possible to write C with classes using even the most modern C++
    suite.

    Indeed.

    Much of those sorts of things are useful for writing high-performance
    general purpose containers and other such flexible libraries.

    Disagreed.
    The syntactic innovations that cause "modern C++" to look as different >language from both original "C with classes" and from following "C with >classes and templates" are:
    Major:
    1. Lambda expressions

    Syntactic sugar.

    2. Uniform initialization

    Syntactic sugar.

    3. Range-based for loop

    Syntactic sugar.

    4. Attributes

    Available through compiler-specific directives for decades,
    but generally rarely useful.

    Minor:
    1. New meaning of auto.

    Doesn't increase readability, IMO.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From boltar@boltar@caprica.universe to comp.lang.c++ on Sun Sep 7 16:00:22 2025
    From Newsgroup: comp.lang.c++

    On Sun, 07 Sep 2025 15:30:34 GMT
    scott@slp53.sl.home (Scott Lurndal) gabbled:
    Michael S <already5chosen@yahoo.com> writes:
    1. Lambda expressions

    Syntactic sugar.

    They can make code a bit more compact and easier to follow.

    1. New meaning of auto.

    Doesn't increase readability, IMO.

    Devs using auto everywhere really boils my piss sometimes. If I wanted a language where I can't tell what type a variable is without searching through the code or using an IDE I'd use python. Its bad enough with templates but
    at least they have a useful function.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Beej Jorgensen@beej@beej.us to comp.lang.c,comp.lang.c++ on Sun Sep 7 17:50:51 2025
    From Newsgroup: comp.lang.c++

    In article <qP4uQ.1056787$3yJ3.222885@fx16.iad>,
    Scott Lurndal <slp53@pacbell.net> wrote:
    It sucks due to design, not implementation.

    I think it sucks due to both. :)

    Last time I flew there were so many software bugs from cosmetic to
    functional. Nothing in the flight control systems was apparent,
    thankfully. But the boarding pass printout had raw HTML tags (did anyone
    even do the most basic test of looking?), the automated baggage check
    failed to recognize us and other travelers while the human had no
    trouble, and the in-flight entertainment system needed a reboot to get
    it working.

    Just last night I was fighting with our local movie theater's website,
    which required me to reload the page every time I hit "back", at which
    point I'd have to re-navigate to the theater page.

    But what was I going to do? Not fly out of that airport? Not go to the
    one major theater in my town? They know they only have to care so much
    about quality.

    The older I get, the more my poor wife has to listen to my laments. And
    she has limited eyeroll capabilities.
    --
    Brian "Beej Jorgensen" Hall | beej@beej.us
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From David Brown@david.brown@hesbynett.no to comp.lang.c++ on Sun Sep 7 20:05:25 2025
    From Newsgroup: comp.lang.c++

    On 07/09/2025 16:42, boltar@caprica.universe wrote:
    On Sun, 7 Sep 2025 12:08:08 +0200
    David Brown <david.brown@hesbynett.no> gabbled:
    On 07/09/2025 10:16, Michael S wrote:
    Statements like that apply to just about any language or framework.
    Which makes them useless.

    comp.lang.c removed


    C would be an example of a language where you /can/ learn the solid
    majority of it, and people use a large proportion of its features in
    everyday coding.

    When I used Borland Pascal, I knew pretty much all of the language.
    When I used BASIC on a variety of 1980's computers, I knew all every
    statement and expression in the languages.-a When I started with
    microcontrollers, I knew every assembly instruction and cpu register,

    Modern x86 is a good example of a CPU that is simply not possible for one person to know and understand all the opcodes.

    I have a few old x86 assembly books on my bookshelf, and an Intel i486 reference manual - but I gave up after that. I am quite fluent at
    reading x86 assembly (thanks mostly to godbolt.org), but have no plans
    for trying to understand it all or - even worse - understand what is
    fast or slow on a given x86 device.

    Sometimes I wonder if even
    the compilers know them all given some of the assembler I've seen being generated for it. gcc for example seems to have a strange aversion to ever using the FPU opcodes.


    I haven't needed to use floating point on x86 in any kind of efficiency-critical situation, so I can't give useful suggestions there.
    But I have used gcc and floating point on a few embedded targets. One
    thing that I often see there is that on microcontrollers, floating point
    units can often have incomplete IEEE support in instructions. This can
    mean that when you ask for, say, a square root, you get a library call.
    First the library function checks for and handles NaNs, infinities, and
    other awkward values, before it can use a square root opcode to do the
    work for normal values. Using "-ffast-math" for that kind of target can
    make an enormous difference because it simplifies the code - it assumes
    you have only normal floating point values, that operations are
    associative like they would be in real mathematics, and so on. Perhaps
    you would see similar benefits from "-ffast-math" on gcc?

    The other thing you see with gcc on x86 is that code is made to work on
    a very large range of devices. If you use "-march=native", or give it
    an explicit "-march" flag, gcc is much freer to use SIMD and other
    opcodes that are not supported on all x86 targets.

    I can't say if that would make a noticeable difference for you or not.

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Paavo Helde@eesnimi@osa.pri.ee to comp.lang.c,comp.lang.c++ on Mon Sep 8 09:13:11 2025
    From Newsgroup: comp.lang.c++

    On 9/7/2025 8:50 PM, Beej Jorgensen wrote:

    Just last night I was fighting with our local movie theater's website,
    which required me to reload the page every time I hit "back", at which
    point I'd have to re-navigate to the theater page.

    It is hard to get the browser "back" button to work when there is a
    state at the server side. In a bank, when you have transferred some
    money to somebody, what should the "back" button do? Take the money back
    from another bank? Send the money again?

    Actually, the back button in the browser should be disabled when
    clicking it would not make sense, but it looks like there is currently
    no protocol for doing that.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Chris M. Thomasson@chris.m.thomasson.1@gmail.com to comp.lang.c,comp.lang.c++ on Mon Sep 8 00:20:12 2025
    From Newsgroup: comp.lang.c++

    On 9/7/2025 11:13 PM, Paavo Helde wrote:
    On 9/7/2025 8:50 PM, Beej Jorgensen wrote:

    Just last night I was fighting with our local movie theater's website,
    which required me to reload the page every time I hit "back", at which
    point I'd have to re-navigate to the theater page.

    It is hard to get the browser "back" button to work when there is a
    state at the server side. In a bank, when you have transferred some
    money to somebody, what should the "back" button do? Take the money back from another bank? Send the money again?

    Actually, the back button in the browser should be disabled when
    clicking it would not make sense, but it looks like there is currently
    no protocol for doing that.

    Hopefully some sort of state that can help prevent this?
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.lang.c,comp.lang.c++ on Mon Sep 8 08:36:22 2025
    From Newsgroup: comp.lang.c++

    On Wed, 03 Sep 2025 22:20:48 +0000, Pierre wrote:

    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks! Unfortunately, it's all too true."

    Ken Thompson, when asked what OS he uses, replied that he has given up on Apple (the so-called rCLUnixrCY) and switched to Linux, specifically the Raspberry Pi.

    Did anybody ask Kernighan what he uses?
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.lang.c,comp.lang.c++ on Mon Sep 8 08:40:04 2025
    From Newsgroup: comp.lang.c++

    On Fri, 5 Sep 2025 17:34:34 -0400, James Kuyper wrote:

    I've heard that one of the concepts behind the design of COBOL is that
    it should allow managers to write programs, obviating the need for specialized programmers.

    There was a specific focus on rCLbusinessrCY needs, as opposed to rCLscientificrCY
    needs. So no transcendental functions, for example. And then what happens
    in derivatives trading? You need transcendental functions, of course. Is
    that not a rCLbusinessrCY need?

    Another feature omitted was dynamic string handling. And what comes along
    but SQL databases, which quickly became an essential rCLbusinessrCY need? But it turns out that the best way to interface to a relational database is to generate SQL query strings. Which COBOL could, even to this day, only do badly.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.lang.c,comp.lang.c++ on Mon Sep 8 08:41:50 2025
    From Newsgroup: comp.lang.c++

    On Sat, 6 Sep 2025 18:38:31 -0000 (UTC), Lew Pitcher wrote:

    The bog-standard COBOL CALL verb suffices for that, along with a
    suitable linkage editor or linking loader https://www.ibm.com/docs/en/cobol-zos/6.3.0?topic=statements-call-statement

    No support for variadic subroutines, I see ...
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.lang.c,comp.lang.c++ on Mon Sep 8 08:43:03 2025
    From Newsgroup: comp.lang.c++

    On Mon, 8 Sep 2025 09:13:11 +0300, Paavo Helde wrote:

    Actually, the back button in the browser should be disabled when
    clicking it would not make sense, but it looks like there is currently
    no protocol for doing that.

    The way to disable it would be to never reload the entire page, just keep dynamically updating parts of its contents.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lynn McGuire@lynnmcguire5@gmail.com to comp.lang.c,comp.lang.c++ on Mon Sep 8 17:01:13 2025
    From Newsgroup: comp.lang.c++

    On 9/8/2025 3:36 AM, Lawrence DrCOOliveiro wrote:
    On Wed, 03 Sep 2025 22:20:48 +0000, Pierre wrote:

    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks! Unfortunately, it's all too true."

    Ken Thompson, when asked what OS he uses, replied that he has given up on Apple (the so-called rCLUnixrCY) and switched to Linux, specifically the Raspberry Pi.

    Did anybody ask Kernighan what he uses?

    He was using an Apple laptop and was complaining bitterly how difficult
    it was to get to the underlying unix based operating system.

    Lynn

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.lang.c,comp.lang.c++ on Mon Sep 8 22:43:36 2025
    From Newsgroup: comp.lang.c++

    On Mon, 8 Sep 2025 17:01:13 -0500, Lynn McGuire wrote:

    On 9/8/2025 3:36 AM, Lawrence DrCOOliveiro wrote:

    Ken Thompson, when asked what OS he uses, replied that he has given up
    on Apple (the so-called rCLUnixrCY) and switched to Linux, specifically the >> Raspberry Pi.

    Did anybody ask Kernighan what he uses?

    He was using an Apple laptop and was complaining bitterly how difficult
    it was to get to the underlying unix based operating system.

    Given that Apple seems to be moving away from the rCLUnixrCY name, sounds like he might be following ThompsonrCOs example soon ...
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lynn McGuire@lynnmcguire5@gmail.com to comp.lang.c,comp.lang.c++ on Mon Sep 8 17:57:56 2025
    From Newsgroup: comp.lang.c++

    On 9/8/2025 5:43 PM, Lawrence DrCOOliveiro wrote:
    On Mon, 8 Sep 2025 17:01:13 -0500, Lynn McGuire wrote:

    On 9/8/2025 3:36 AM, Lawrence DrCOOliveiro wrote:

    Ken Thompson, when asked what OS he uses, replied that he has given up
    on Apple (the so-called rCLUnixrCY) and switched to Linux, specifically the >>> Raspberry Pi.

    Did anybody ask Kernighan what he uses?

    He was using an Apple laptop and was complaining bitterly how difficult
    it was to get to the underlying unix based operating system.

    Given that Apple seems to be moving away from the rCLUnixrCY name, sounds like
    he might be following ThompsonrCOs example soon ...

    Is Apple moving MacOS away from NextStep, Mach, and BSD ?
    https://en.wikipedia.org/wiki/NeXTSTEP
    https://en.wikipedia.org/wiki/MacOS

    Lynn

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From scott@scott@slp53.sl.home (Scott Lurndal) to comp.lang.c,comp.lang.c++ on Tue Sep 9 14:45:53 2025
    From Newsgroup: comp.lang.c++

    Lynn McGuire <lynnmcguire5@gmail.com> writes:
    On 9/8/2025 3:36 AM, Lawrence DrCOOliveiro wrote:
    On Wed, 03 Sep 2025 22:20:48 +0000, Pierre wrote:

    I liked his reply to the question about the current state of software
    today:

    "A lot of it sucks! Unfortunately, it's all too true."

    Ken Thompson, when asked what OS he uses, replied that he has given up on
    Apple (the so-called rCLUnixrCY) and switched to Linux, specifically the
    Raspberry Pi.

    Did anybody ask Kernighan what he uses?

    He was using an Apple laptop and was complaining bitterly how difficult
    it was to get to the underlying unix based operating system.

    Open the terminal app and you have a shell.

    Now, I will admit, that the apple korn shell implementation
    is rather sub-par, particularly with 'set -o vi'.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From candycanearter07@candycanearter07@candycanearter07.nomail.afraid to comp.lang.c,comp.lang.c++ on Tue Sep 9 21:50:02 2025
    From Newsgroup: comp.lang.c++

    Lawrence DrCOOliveiro <ldo@nz.invalid> wrote at 08:43 this Monday (GMT):
    On Mon, 8 Sep 2025 09:13:11 +0300, Paavo Helde wrote:

    Actually, the back button in the browser should be disabled when
    clicking it would not make sense, but it looks like there is currently
    no protocol for doing that.

    The way to disable it would be to never reload the entire page, just keep dynamically updating parts of its contents.


    Then people would complain about being sent back to the search engine or new tab page.
    --
    user <candycane> is generated from /dev/urandom
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From candycanearter07@candycanearter07@candycanearter07.nomail.afraid to comp.lang.c++ on Tue Sep 9 21:50:04 2025
    From Newsgroup: comp.lang.c++

    boltar@caprica.universe <boltar@caprica.universe> wrote at 16:00 this Sunday (GMT):
    On Sun, 07 Sep 2025 15:30:34 GMT
    scott@slp53.sl.home (Scott Lurndal) gabbled:
    Michael S <already5chosen@yahoo.com> writes:
    1. Lambda expressions

    Syntactic sugar.

    They can make code a bit more compact and easier to follow.

    That is the definition of syntax sugar, yeah.

    1. New meaning of auto.

    Doesn't increase readability, IMO.

    Devs using auto everywhere really boils my piss sometimes. If I wanted a language where I can't tell what type a variable is without searching through
    the code or using an IDE I'd use python. Its bad enough with templates but
    at least they have a useful function.


    JS is way worse I think.
    --
    user <candycane> is generated from /dev/urandom
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Lawrence =?iso-8859-13?q?D=FFOliveiro?=@ldo@nz.invalid to comp.lang.c,comp.lang.c++ on Tue Sep 9 22:38:51 2025
    From Newsgroup: comp.lang.c++

    On Tue, 9 Sep 2025 21:50:02 -0000 (UTC), candycanearter07 wrote:

    Lawrence DrCOOliveiro <ldo@nz.invalid> wrote at 08:43 this Monday (GMT):

    On Mon, 8 Sep 2025 09:13:11 +0300, Paavo Helde wrote:

    Actually, the back button in the browser should be disabled when
    clicking it would not make sense, but it looks like there is currently
    no protocol for doing that.

    The way to disable it would be to never reload the entire page, just
    keep dynamically updating parts of its contents.

    Then people would complain about being sent back to the search engine or
    new tab page.

    There is a way to set a rCLmodified & unsavedrCY flag on the page so that, when the user tries to leave it, they get an rCLAre you sure?rCY warning.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Louis Krupp@lkrupp@invalid.pssw.com.invalid to comp.lang.c,comp.lang.c++ on Wed Sep 10 01:21:40 2025
    From Newsgroup: comp.lang.c++

    On 9/8/2025 2:40 AM, Lawrence DrCOOliveiro wrote:
    On Fri, 5 Sep 2025 17:34:34 -0400, James Kuyper wrote:

    I've heard that one of the concepts behind the design of COBOL is that
    it should allow managers to write programs, obviating the need for
    specialized programmers.
    There was a specific focus on rCLbusinessrCY needs, as opposed to rCLscientificrCY
    needs. So no transcendental functions, for example. And then what happens
    in derivatives trading? You need transcendental functions, of course. Is
    that not a rCLbusinessrCY need?

    Another feature omitted was dynamic string handling. And what comes along
    but SQL databases, which quickly became an essential rCLbusinessrCY need? But it turns out that the best way to interface to a relational database is to generate SQL query strings. Which COBOL could, even to this day, only do badly.

    From what I've read, COBOL was designed for business needs as they were understood in November of 1959. While early versions of the language
    didn't implement transcendental functions, I can do this today in GNU COBOL:

    -a -a compute e = function exp(1.0).
    -a -a display e.

    and get 2.7182818.

    As far as dynamic string handling goes, if the lack of this feature is
    the reason why you don't code SQL queries in COBOL, I totally get it.
    Some COBOL compilers support EXEC SQL, some don't, and life is too short
    to waste time trying to cram square pegs into round holes.

    Louis

    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From candycanearter07@candycanearter07@candycanearter07.nomail.afraid to comp.lang.c,comp.lang.c++ on Wed Sep 10 18:20:03 2025
    From Newsgroup: comp.lang.c++

    Lawrence DrCOOliveiro <ldo@nz.invalid> wrote at 22:38 this Tuesday (GMT):
    On Tue, 9 Sep 2025 21:50:02 -0000 (UTC), candycanearter07 wrote:

    Lawrence DrCOOliveiro <ldo@nz.invalid> wrote at 08:43 this Monday (GMT):

    On Mon, 8 Sep 2025 09:13:11 +0300, Paavo Helde wrote:

    Actually, the back button in the browser should be disabled when
    clicking it would not make sense, but it looks like there is currently >>>> no protocol for doing that.

    The way to disable it would be to never reload the entire page, just
    keep dynamically updating parts of its contents.

    Then people would complain about being sent back to the search engine or
    new tab page.

    There is a way to set a rCLmodified & unsavedrCY flag on the page so that, when the user tries to leave it, they get an rCLAre you sure?rCY warning.


    Good to know, that definitely helps the issue.
    --
    user <candycane> is generated from /dev/urandom
    --- Synchronet 3.21a-Linux NewsLink 1.2