ForthMinus
From OpenSimulator
(Difference between revisions)
Line 1: | Line 1: | ||
− | |||
== LibCore == | == LibCore == | ||
{| border=1 style="border-collapse:collapse;th background-color:#666;width:100%;text-align:center;" | {| border=1 style="border-collapse:collapse;th background-color:#666;width:100%;text-align:center;" | ||
Line 89: | Line 88: | ||
| ( n -- n ) | | ( n -- n ) | ||
| Pushes variable n to stack | | Pushes variable n to stack | ||
+ | |} | ||
+ | |||
+ | == LibMath == | ||
+ | {| border=1 style="border-collapse:collapse;th background-color:#666;width:100%;text-align:center;" | ||
+ | ! style="background-color:#D2ECD2;" | Word | ||
+ | ! style="background-color:#D2ECD2;" | Stack | ||
+ | ! style="background-color:#D2ECD2;" | Description | ||
+ | |- | ||
|} | |} |
Revision as of 10:31, 20 January 2008
LibCore
Word | Stack | Description |
---|---|---|
dup | ( n -- n n ) | Duplicates the top item of the stack |
. * | ( n -- ) | Prints the top item of the stack in console |
dump * | ( -- ) | Dumps the VM's current status in console |
swap | ( n1 n2 -- n2 n1) | Swaps the order of the top two items in the stack |
savestate * | ( n -- ) | Saves the VM's state to file n.fmo |
words * | ( -- ) | Lists the primitive words loaded to console |
loadlib | ( n -- ) | Loads the words in n.dll |
: [;] | Special | Define a user word. The first word following the : in the estack is the name. All words following until ; is the definition of the word |
savestack | ( ... n -- ) | Pops the entire stack into variable n |
loadstack | ( n -- ... ) | Push's the stack saved in variable n |
clearstack | ( ... -- ) | Clears the entire stack |
if,[else],then | ( n -- ) | If n is true, execute words until else or then. If n is false, execute else to then |
not | ( n -- n ) | If n is true, push false, if n is false, push true |
> | ( n1 n2 -- n ) | If n1 > n2, push true else push false |
< | ( n1 n2 -- n) | If n1 < n2, push true else push false |
>= | ( n1 n2 -- n ) | If n1 >= n2, push true else push false |
<= | ( n1 n2 -- n) | If n1 <= n2, push true else push false |
= | ( n1 n2 -- n ) | If n1 == n2, push true else push false |
!= | ( n1 n2 -- n ) | If n1 != n2, push true else push false (technically pushes "= not" to estack) |
! | ( n1 n2 -- ) | Saves n1 to variable n2 |
@ | ( n -- n ) | Pushes variable n to stack |
LibMath
Word | Stack | Description |
---|