<div dir="ltr">The obvious "modern" replacement for C is Go, which was essentially designed as a "C for bad programmers" - that's not really as bad as it sounds, as you do need to be an astonishingly careful programmer to write C that's both safe and good. Go has quite a lot more to it than C, but it is at heart a Structured Programming language - the paradigm that most modern C is written in - and its general "feel" is much the same.<div><br></div><div>Rust is more of a replacement for C++, but it lacks so much of C++'s power that it's really quite the tradeoff. There's finally the beginnings of a serious movement to bring a lot of the core Rust concepts to C++ - if this happens, then it'll be very good news for C++ (where you still can end up with a null pointer dereference, or a buffer overrun, or a dangling reference).</div><div><br></div><div>Pascal died out really because of C; though as a teaching language, Python has taken it over.</div><div><br></div><div>JavaScript - and TypeScript ("JavaScript but it looks a bit like.NET") - are pretty weird languages. It's generally best not to look too closely at them, as they turn out to be a pile of weird behaviours and strange hacks layered unevenly on each other.</div><div><br></div><div>Dave.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 23 Oct 2024 at 20:15, Alan Gray via Swlug <<a href="mailto:swlug@mailman.lug.org.uk">swlug@mailman.lug.org.uk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div><div dir="auto">Hello Huw<br><br>Nicely said. I started on 6809 then 6502. Like you, it helped understanding pointers.<br><br>Wasn't Erlang developed for use in telephone exchanges?<br><br>Computer languages are tools. As always it is best to select the right tool for the job. Without knowing the job it's all speculation.<br><br>As a first serious language I am reminded that years ago in college I was taught 'C' and Pascal. They had quite different characteristics and were considered complementary. Probably Python would replace Pascal, but I am not so sure about 'C'. Maybe Rust, but there are others that could be considered.<br><br>Regards<br>Alan Gray <br></div><br><br><div class="gmail_quote"><div dir="auto">On 23 October 2024 18:52:53 BST, "Huw Ford (ConceptPC) via Swlug" <<a href="mailto:swlug@mailman.lug.org.uk" target="_blank">swlug@mailman.lug.org.uk</a>> wrote:</div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">

    <p>Hi,<br>
    </p>
    <p>I agree that C might not be the ideal 'first' serious programming
      language, but after 40 years of programming, I’m still not
      entirely sure which one would be.</p>
    <p>I started with assembler on the 6502 CPU, then moved on to the
      68000. From there, I learned K&R C (Kernighan and Ritchie). My
      background in assembler, especially with memory addressing, helped
      me make sense of C’s pointers. Later, I transitioned to ANSI C.</p>
    <p>After that came C++. Once I got my head around object-oriented
      programming (OOP), I really fell in love with it.</p>
    <p>Eventually, I got into PHP and JavaScript, both of which are
      syntactically similar to C in many ways.</p>
    <p>But the language that really expanded my thinking was Erlang. It
      was so different from anything else I’d ever used. That said, I
      wouldn’t recommend Erlang unless you had a specific use case for
      it.</p>
    <p>I’ve worked with people who recommend Java as a good first
      language—it’s quite similar to C but without the headaches of
      manual memory management. However, I haven’t had any first-hand
      experience with it myself.</p>
    <p>Hope this helps.</p>
    <p>Huw</p>
    <p><br>
    </p>
    <div>On 23/10/2024 10:16, Neil Greenwood via
      Swlug wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="auto">
        <div>
          <div class="gmail_quote">
            <div dir="ltr" class="gmail_attr">On Wed, 23 Oct 2024, 10:04
              Morgan Green via Swlug, <<a href="mailto:swlug@mailman.lug.org.uk" target="_blank">swlug@mailman.lug.org.uk</a>>
              wrote:<br>
            </div>
            <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
              <div>
                <div dir="auto">Hi,</div>
                <div dir="auto"><br>
                </div>
                <div dir="auto">I am very new to programming, but I want
                  to start out on C to grasp the fund<span>amentals of
                    all programming lan<span>guages. Can anyone
                      recommend me any paperbooks on C programming that
                      is suitable for complete beginners?</span></span></div>
                <div dir="auto"><span><span><br>
                    </span></span></div>
                <div dir="auto"><span><span>Ki<span>nd regards,</span></span></span></div>
                <div dir="auto"><span><span><span>Morgan Green</span></span></span></div>
              </div>
            </blockquote>
          </div>
        </div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">Hi Morgan, </div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">I'm not sure C is the best language for a
          beginner. You have a lot of extra work to do managing memory -
          my first C program (after I had 8 years experience with 2-3
          other languages) just segfaulted, and I never fixed it! </div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">If you are just starting out, my recommendation
          is to look at Python - apart from the strict indentation
          requirement, it's much more friendly. This will give you a
          good understanding of the fundamentals that are present in
          most languages.</div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">If you want dead-tree books, Pragmatic Press
          make a good series of introductory titles for both C and
          Python, as well as a wife range of other languages. </div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">Hope this helps, </div>
        <div dir="auto">Neil</div>
        <div dir="auto">
          <div class="gmail_quote">
            <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
              <div>
                <div id="m_-2741978334735178536m_-1858114475879792213ms-outlook-mobile-signature" dir="auto">
                  <div><br>
                  </div>
                  Sent from <a href="https://aka.ms/AAb9ysg" rel="noreferrer" target="_blank">Outlook for Android</a></div>
              </div>
              -- <br>
              Swlug mailing list<br>
              <a href="mailto:Swlug@mailman.lug.org.uk" rel="noreferrer" target="_blank">Swlug@mailman.lug.org.uk</a><br>
              <a href="https://mailman.lug.org.uk/mailman/listinfo/swlug" rel="noreferrer noreferrer" target="_blank">https://mailman.lug.org.uk/mailman/listinfo/swlug</a><br>
            </blockquote>
          </div>
        </div>
      </div>
      <br>
      <fieldset></fieldset>
    </blockquote>
  </blockquote></div></div>

-- <br>
Swlug mailing list<br>
<a href="mailto:Swlug@mailman.lug.org.uk" target="_blank">Swlug@mailman.lug.org.uk</a><br>
<a href="https://mailman.lug.org.uk/mailman/listinfo/swlug" rel="noreferrer" target="_blank">https://mailman.lug.org.uk/mailman/listinfo/swlug</a><br>
</blockquote></div>