
    <h1>Review of the book the Arduino controlled by eforth by dr
      chen-hanson ting published in 2018</h1>
    <h2>
      written by chen-hanson ting</h2>
    Late Dr. ting was a chemist turned engineer. he earned a phd in
    chemistry at the U of Chicago in 1965. taught chemistry in Taiwan
    until 1975. became a firmware engineer until hI retirement in 2000.
    he was a forth advocate for more than 50 years, especially a forth
    called eforth that has been ported to many devices, including the
    micro chip atmega 328 found on the arduino uno board.
    <p>I found this book while searching for forths for the arduino uno
      boards. the source code and documentation for eforth is available
      in a lot of places I will put a few links in the show notes.</p>
    <p>
      I believe I mentioned this forth in an earlier hpr where I talked
      about choosing a forth.</p>
    <p>
      forth interest group <a moz-do-not-send="true"
        href="https://forth.org">https://forth.org</a></p>
    <p>
      <a moz-do-not-send="true" href="https://wiki.forth-ev.de">https://wiki.forth-ev.de</a></p>
    <p><a moz-do-not-send="true" href="https://chochain.github.io">https://chochain.github.io</a>
      (pdf)</p>
    <p>When I first encountered dr tings forth for arduino I was
      interested for one reason, it was easily assembled using avra, the
      gnu port of the atmel assembler. this was nice because using
      atmels (now microchips) assemblers on Linux required installing
      wine and installing wine, in the past, on a 64 bit Slackware meant
      installing 32 bit libraries to have a multI lib Slackware. ( that
      not an issue now). assembling the forth code in avra is quick, its
      only a little bit over 5k in size in the end.</p>
    After playing with eforth for a while I became frustrated because I
    could create new words in the dictionary and the examples ran fine,
    but nothing persisted across reboot. so I dropped eforth and ended
    up using flashforth, which is a great, robust full featured forth. I
    still recommend flashforth if your starting out with forth on a
    microcontroller its solid software with good documentation.<br>
    <br>
    At the end of last year I thought it would be fun to write my own
    forth. and after looking into doing that I revisited 328eforth and
    thought, no how about I fix the problems with eforth on the arduino.
    so I dug out the book and began reading.
    <p>
      Jones forth port at <a moz-do-not-send="true"
        href="https://ratfactor.com/nasmjf">https://ratfactor.com/nasmjf</a></p>
    The book has 6 parts.
    <p>
      part 1 is dr tings musings on how he ended up creating 328eforth.</p>
    <p>
      part 2 explains installing eforth.</p>
    <p>
      the 3rd part begins exercising the arduino board using forth in
      the interactive interpreter.</p>
    <p>
      part 4 explains 328eforth implementation and design decisions.</p>
    <p>
      part 5 is the full commented source code of 328eforth and, this is
      the best part, dr tings explanation of what is going on in the
      code broken down by functional sections. a gold mine of
      information!</p>
    <p>
      part 6 conclusions</p>
    <p>The last part is his conclusions and examples to learn forth.</p>
    <p>This is a great free software project. nothing is hidden. it is
      accessible to anybody who would take the time to read and dig into
      the code. its makes assembly language much less dark and
      foreboding. </p>
    I'll finish by reading a couple of paragraphs from dr tings book
    <p>
      dr ting concludes:</p>
    <p>
      People using computers are trained to be slaves.&nbsp;You are
      taught to push certain buttons, and your are taught to push
      certain keys.&nbsp;Then, you get employed to push buttons and keys
      to work as slaves.&nbsp;Computers, programming languages, and
      operating systems are made complicated to enslave people.</p>
    <p>
      Computers are not complicated beyond
      comprehension.&nbsp;Programming languages and operating systems do
      not have to be complicated.&nbsp;If you get a sharp knife, you can
      be the master of your destination.&nbsp;328eforth is a sharp
      knife.&nbsp;Go use it.</p>
    <p>
      The hacker ethos.</p>
    The next podcast I produce will cover installing eforth on an
    arduino board and solving that pesky loss of words between boots
    problem.
    <p>
      <br>
    </p>