Forth

Forth

Language Context

Forth is a programming language particularly useful as a direct abstraction of computer architecture instruction sets, and broadly "low-level" or "bare-metal" programming involving hardware interaction. Uniquely, Forth as used tends to not focus one particular language – although specifications do exist – rather tending to be implemented and re-implemented

Model of Computation Virtual Machine Forth Background for general technical audience Model of Computation Stack as entire data model Uses Direct Hardware access problems, "low-level" References Threaded Interpretive Languages Jonesforth Papers Typing stack languages Special Words in Forth by Stephen Pelc (EuroForth 2017) State-smartness: Applications, Pitfalls, Alternatives by M. Anton Ertl. At that time, Mountain View Press came out with a Forth implementation incorporating the 79 Standard changes. It put the error messages in line and added supplemental functions so that all but one of the functions matched those covered in Starting Forth. The single problem was 'tic'. The assembler for several processors was included. A Forth editor described in Chapter 3 of Starting Forth written by Sam Daniels is included. Note: Starting Forth does not point out that you have to invoke the editor vocabulary for it to work! Various schemes of memory management have been developed to work around some of those limitations. A 32-bit Forth system should have 32-bit stacks and address space. Some means should be found to deal efficiently with 16-bit addresses in the segmented architecture. F32, by Rick VanNorman, solves some of these issues. He has created a full development package including a text editor and assembler in about 900 words. Forth is a programming language, "kernel", operating system, design philosophy closely linking the hardware to the program originating from the 1970s Chuck Moore "discovered" rather than invented concatenative, E(p1 o p2) = E(p1) o E(p2) ultimate low-level language a language that seems to derive from computer architecture "low floor, high ceiling" approach Transparent access to runtime Metaprogramming Concatenative

Lab

  1. Complete Embedding Brainfuck in Forth
  2. Complete Forth for Z80

Reference

Papers

Books