FORTH

Hutton's uncomformity at Siccar Point
Sir James Hall (1788)

https://ratfactor.com/forth/the_programming_language_that_writes_itself.html https://www.bradrodriguez.com/papers/bnfparse.htm https://www.complang.tuwien.ac.at/forth/gforth/Docs-html/General-Loops-Tutorial.html#General-Loops-Tutorial https://comp.lang.forth.narkive.com/iSD2ngmy/implementing-postpone# bump allocator with HERE 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 Forth is a programming language, "kernel", operating system, design philosophy closely linking the hardware to the program originating from the 1970s Chuck Moore Transparent access to runtime a language that seems to derive from computer architecture "discovered" rather than invented "low floor, high ceiling" approach

features

# practice metaprogramming postpone and immediate : foo postpone + ; immediate : bar foo ; # data structure catalog # theory model of Computation concatenative, E(p1 o p2) = E(p1) o E(p2) typing stack languages virtual machine Model of Computation, stack as programming data model # implementation compile-time and run-time semantics of a word Hardware access problems, "low-level" > 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. > 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! # references Book Threaded Interpretive Languages Implementation Jonesforth Papers Special Words in Forth by Stephen Pelc (EuroForth 2017) State-smartness: Applications, Pitfalls, Alternatives by M. Anton Ertl. __ha(Lab, lab)
  1. Forth: pseudo-random random number pattern Complete
  2. Embedding Brainfuck in Forth Complete
  3. Forth for Z80 Complete
__ha(Reference, reference)

Articles

Code

https://github.com/schani/forthlisp https://gist.github.com/adolfopa/64a1a59c28cbd77b71449d68f4c36dc0 https://people.computing.clemson.edu/~mark/subroutines.html https://github.com/nineties/planckforth https://www.bradrodriguez.com/papers/index.html

Papers

Books