User Tools

Site Tools


tutorials:forth

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
tutorials:forth [2022/01/08 12:47]
papa [Reference]
tutorials:forth [2022/06/07 02:10] (current)
rcs correct lack of space after dot commands in examples
Line 1: Line 1:
 [[http://forth.org/whatis.html|Forth]] is a stack-based, RPN-format programming language created by [[https://colorforth.github.io/|Charles H. Moore]] and first released in 1970.  [[http://forth.org/whatis.html|Forth]] is a stack-based, RPN-format programming language created by [[https://colorforth.github.io/|Charles H. Moore]] and first released in 1970. 
 +
 +There are two Forth implementation available.
  
 **FORTH-10** is a Forth language interpreter included in the Panda TOPS-20 distribution. The anonymous programmer describes the implementation as "NOT totally standard". MIDAS assembly language source is available in file ''TOPS20:<UTILITIES>FORTH.MID''. **FORTH-10** is a Forth language interpreter included in the Panda TOPS-20 distribution. The anonymous programmer describes the implementation as "NOT totally standard". MIDAS assembly language source is available in file ''TOPS20:<UTILITIES>FORTH.MID''.
  
-====== Survival Guide ======+**FORTH** is another interpreter originally written on the MIT AI lab DEC-20 called OZ, by John Wilson.
  
-Start the interpreter on TWENEX with the command ''FORTH''. If you have not created an [[#start-up_file|auto-load file]], FORTH-10 will respond with the default greeting and prompt.+====== FORTH-10 Survival Guide ======
  
-  @FORTH+Start the interpreter on TWENEX with the command ''FORTH-10''. If you have not created an [[#start-up_file|auto-load file]], FORTH-10 will respond with the default greeting and prompt. 
 + 
 +  @FORTH-10
   FORTH-10   Type QUIT to exit.   FORTH-10   Type QUIT to exit.
    Ok    Ok
Line 17: Line 21:
   7 3 Ok  ( Push 7 then 3 on stack. )   7 3 Ok  ( Push 7 then 3 on stack. )
   + Ok    ( Remove two items from stack (3 and 7), push the sum on stack, so 10 is only item. )    + Ok    ( Remove two items from stack (3 and 7), push the sum on stack, so 10 is only item. ) 
-  .10 Ok  ( Word . pops top stack item and prints it. Stack is now empty. )+  . 10 Ok  ( Word . pops top stack item and prints it. Stack is now empty. )
      
 Words ''.'', ''+'', ''-'', ''*'', and ''/'' interpret stack items as integer values. For floating-point values, use ''f.'', ''f+'', ''f-'', ''f*'', and ''f/''.   Words ''.'', ''+'', ''-'', ''*'', and ''/'' interpret stack items as integer values. For floating-point values, use ''f.'', ''f+'', ''f-'', ''f*'', and ''f/''.  
  
   3.14159 Ok   3.14159 Ok
-  f.3.14159 Ok      ( f. pops stack and displays as floating-point. )+  f. 3.14159 Ok      ( f. pops stack and displays as floating-point. )
      
 Add new words to the dictionary with the defining words '':'' and '';''. Add new words to the dictionary with the defining words '':'' and '';''.
Line 33: Line 37:
                      ( previous top value, multiply and push product on stack.  )                      ( previous top value, multiply and push product on stack.  )
   7 TIMES5 Ok        ( Execute the word. )   7 TIMES5 Ok        ( Execute the word. )
-  .35  Ok            ( Pop and display result. )+  . 35  Ok            ( Pop and display result. )
      
 List words currently defined in the dictionary with ''VLIST''. List words currently defined in the dictionary with ''VLIST''.
Line 75: Line 79:
  
 At start-up, FORTH-10 searches the user's log-in directory for a file named ''AUTO-LOAD.4TH''. If such a file exists, it is loaded automatically. If the file does not exist, FORTH-10 displays a standard greeting message. At start-up, FORTH-10 searches the user's log-in directory for a file named ''AUTO-LOAD.4TH''. If such a file exists, it is loaded automatically. If the file does not exist, FORTH-10 displays a standard greeting message.
 +
 +====== FORTH ======
 +
 +Start the John Wilson's interpreter on TWENEX with the command ''FORTH''. It will respond with this greeting and prompt.
 +
 +  @FORTH
 +  FORTH/Oz v1 (JohnW)
 +  ok
 +  
 +Exit FORTH with the command ''BYE''.
 +
  
 ====== Reference ====== ====== Reference ======
tutorials/forth.1641646077.txt.gz · Last modified: 2022/01/08 12:47 by papa