, Data: n- Addr: - Float: - Store the specified value into the memory at `here` and increment `Heap` by 1. Class: class:word | Namespace: global | Interface Layer: all Example #1: $a , $b , $c , #0 , ---reveal--- Data: - Addr: - Float: - Switch to the exposed (public) portion of a lexical namespace. Class: class:word | Namespace: global | Interface Layer: all ; Data: - Addr: - Float: - End the current definition. Class: class:macro | Namespace: global | Interface Layer: all [ Data: - Addr: - Float: - Begin a quotation. Class: class:macro | Namespace: global | Interface Layer: all ] Data: - Addr: - Float: - End a quotation. Class: class:macro | Namespace: global | Interface Layer: all dip Data: nq-n Addr: - Float: - Temporarily remove n from the stack, execute the quotation, and then restore n to the stack. Class: class:word | Namespace: global | Interface Layer: all drop Data: n- Addr: - Float: - Discard the top value on the stack. Class: class:primitive | Namespace: global | Interface Layer: all dup Data: n-nn Addr: - Float: - Duplicate the top item on the stack. Class: class:primitive | Namespace: global | Interface Layer: all eq? Data: nn-f Addr: - Float: - Compare two values for equality. Returns `TRUE` if they are equal or `FALSE` otherwise. Class: class:primitive | Namespace: global | Interface Layer: all Example #1: #1 #2 eq? $a $b eq? file:R Data: -n Addr: - Float: - Constant for opening a file in READ mode. Class: class:data | Namespace: file | Interface Layer: rre file:read Data: h-c Addr: - Float: - Given a file handle, read and return the next character in it. Class: class:word | Namespace: file | Interface Layer: rre file:spew Data: ss- Addr: - Float: - Given a string (s1) and a file name (s2), write the string into the file, replacing any existing content. Class: class:word | Namespace: file | Interface Layer: rre here Data: -a Addr: - Float: - Return the next free address in memory. Class: class:word | Namespace: global | Interface Layer: all s:chop Data: s-s Addr: - Float: - Remove the last character from a string. Returns a new string. Class: class:word | Namespace: s | Interface Layer: all s:format Data: ...s-s Addr: - Float: - Construct a new string using the template passed and items from the stack. Class: class:word | Namespace: s | Interface Layer: all s:temp Data: s-s Addr: - Float: - Move a string into the temporary string buffers. Class: class:word | Namespace: s | Interface Layer: all sip Data: nq(?n-?)-n Addr: - Float: - Run quote. After execution completes, put a copy of n back on top of the stack. Class: class:word | Namespace: global | Interface Layer: all swap Data: nm-mn Addr: - Float: - Exchange the position of the top two items on the stack Class: class:primitive | Namespace: global | Interface Layer: all unix:pclose Data: n- Addr: - Float: - Close a pipe. Class: class:word | Namespace: unix | Interface Layer: rre unix:popen Data: sn-n Addr: - Float: - Open a pipe. Takes a command to run, and a file mode (`file:R` or `file:W`; `file:R+` may work on some systems). Returns a file ID usable with words in the `file:` namespace. Class: class:word | Namespace: unix | Interface Layer: rre until Data: q(-f)- Addr: - Float: - Execute quote repeatedly while the quote returns a value of `FALSE`. The quote should return a flag of either `TRUE` or `FALSE`, though `until` will treat any non-zero value as `TRUE`. Class: class:word | Namespace: global | Interface Layer: all Example #1: #10 [ dup n:put nl n:dec dup n:zero? ] until v:preserve Data: aq- Addr: - Float: - Make a copy of the value at the address, then run the quote. Once the quote completes, restore the address to the specified value. Class: class:word | Namespace: v | Interface Layer: all {{ Data: - Addr: - Float: - Begin a lexically scoped area. Class: class:word | Namespace: global | Interface Layer: all } Data: -a Addr: - Float: - Complete an array begun by `{`. Returns a pointer to the data. Class: class:word | Namespace: global | Interface Layer: all }} Data: - Addr: - Float: - End a lexically scoped area. This will hide any headers between `{{` and `---reveal---`, leaving only headers between `---reveal---` and the `}}` visible. Class: class:word | Namespace: global | Interface Layer: all sigil:# Data: s-n Addr: - Float: - Process token as a number. Interpret Time: Convert the string into a number and leave on the stack. Compile Time: Convert the string into a number and compile into the current definition as a literal. Class: class:macro | Namespace: sigil | Interface Layer: all sigil:$ Data: s-c Addr: - Float: - Process token as an ASCII character. Interpret Time: Fetch first character from string. Leave on stack. Compile Time: Fetch first character from the string. Compile into the current definition as literal. Class: class:macro | Namespace: sigil | Interface Layer: all sigil:& Data: s-a Addr: - Float: - Return a pointer to a named item. If name is not found, returns 0. Interpret Time: Lookup name in dictionary, return contents of the xt field on the stack. Compile Time: Lookup name in dictionary, compile code to push the contents of the xt field into the current definition. Class: class:macro | Namespace: sigil | Interface Layer: all sigil:' Data: s-s Addr: - Float: - Process token as a string. Interpret Time: Move string into temporary buffer. If `RewriteUnderscores` is `TRUE`, replace all instances of _ with space. Compile Time: Move string into temporary buffer. If `RewriteUnderscores` is `TRUE`, replace all instances of _ with space. Then compile the string into the current definition. Class: class:macro | Namespace: sigil | Interface Layer: all sigil:( Data: s- Addr: - Float: - Process token as a comment. Interpret Time: Discard the string. Compile Time: Discard the string. Class: class:macro | Namespace: sigil | Interface Layer: all sigil:: Data: s- Addr: - Float: - Hook. Process token as a new definition. Interpret Time: Create a header pointing to `here` with the provided string as the name. Sets class to `class:word`. Class: class:macro | Namespace: sigil | Interface Layer: all