Bonus points if you also know:

  • How the language (allegedly) got it’s name?
  • Which operating system still leverages the language today?
  • pwshguy (mdowst)@programming.dev
    link
    fedilink
    English
    arrow-up
    5
    ·
    edit-2
    1 year ago

    I feel down a rabbit hole, a few years ago wonder the same thing about C#. Here is what I found.

    • C# was developed in 2000 as a successor to C++. Doubling the ++ to a #.
    • C++ was developed in the early 80s as a successor to C. Adding plus (+) to a name was a common way of indicating it was an enhancement. Also ++ is the incrementing operator for C.
    • C was developed in the early 70s as a successor to the B programming language. C comes after B.
    • B was developed in 1969 and was derived from the BCPL language. Basically, B was a stripped down version of BCPL.
    • BCPL (Basic Combined Programming Language) was developed in 1967 and was a designed as an simpler version of CPL.
    • CPL (Combined Programming Language) was developed in the early 60s at Cambridge. The original name was “Cambridge Programming Language” but was changed to Combined when it was published jointly with the University of London.
  • ruffsl@programming.devOP
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 year ago
    Answer:

    Indeed, the precursor to the C programming language is B!

    Additionally:

    Its name most probably represents a contraction of BCPL, though an alternate theory holds that it derives from Bon [Thompson 69], an unrelated language created by Thompson during the Multics days. Bon in turn was named either after his wife Bonnie or (according to an encyclopedia quotation in its manual), after a religion whose rituals involve the murmuring of magic formulas.
    https://en.wikipedia.org/wiki/B_(programming_language)#cite_note-chist-2

    B is almost extinct, having been superseded by the C language. However, it continues to see use on GCOS mainframes (as of 2014) and on certain embedded systems (as of 2000) for a variety of reasons: limited hardware in small systems, extensive libraries, tooling, licensing cost issues, and simply being good enough for the job.
    https://en.wikipedia.org/wiki/B_(programming_language)#cite_note-uwtools-13