With the addition of RECURSE, I've decided to consider Tali Forth "feature complete" and now in BETA. Yippie! This means no more new words for now, because we start optimizing and hunting bugs.
The "frozen" word set is:
Code:
ACTION-OF IS REPEAT WHILE UNTIL ELSE IF WORDS DROP 2DROP ! @ ? 2R> 2R@ 2>R >R R> R@ OVER 2OVER DUP ?DUP 2DUP SWAP 2SWAP NIP TUCK ROT -ROT PICK DEPTH 1- 1+ FALSE TRUE BRANCH (BRANCH) 0BRANCH (0BRANCH) BEGIN AGAIN THEN DO ?DO (DO) (?DO) I J UNLOOP LOOP +LOOP (+LOOP) LEAVE RECURSE ABS DABS + - * / */ */MOD UM* M* UM/MOD UD/MOD SM/REM FM/MOD MOD /MOD M+ AND OR XOR INVERT NEGATE DNEGATE MAX MIN LSHIFT RSHIFT S>D D>S D+ D- <# # #S HOLD SIGN #> U. U.R UD. . .R D. D.R 2 1 0 < = > 0= 0< COUNT >IN TYPE EMIT CHAR [CHAR] TOUPPER KEY BASE HERE PAD UNUSED MARKER ERASE FILL CELL+ CELLS CHAR+ CHARS C, C! C@ CMOVE CMOVE> MOVE ALIGN ALIGNED ALLOT , DEFER@ DEFER! DEFER ' ['] >BODY >NAME EXECUTE EVALUATE STATE COMPILE, : ; ] [ POSTPONE IMMEDIATE COMPILE-ONLY NATIVE-COMPILE CREATE DOES> (DOES>) VARIABLE 2VARIABLE TO VALUE CONSTANT +! SOURCE DECIMAL HEX BINARY DIGIT>NUMBER NUMBER >NUMBER BL CR SPACE SPACES AT-XY PAGE BOLD REGULAR BELL ." S" .( ( \ /STRING -TRAILING FIND ACCEPT PARSE PARSE-NAME WORD .S SEE DUMP (ABORT") ABORT" QUIT ABORT LITERAL (LITERAL) COLD BYE
GitHub has the code to browse at
https://github.com/scotws/TaliForth , and the ophis.bin file should run with py65 as described in README.txt . As always, I'm very grateful for any suggestions, corrections, and feedback.