---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 const Data: ns- Addr: - Float: - Create a constant returning the specified value. 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? f:* Data: - Addr: - Float: FF-F Multiply two floating-point numbers, returning the result. Class: class:word | Namespace: f | Interface Layer: rre Example #1: .3.1415 .22 f:* f:-INF Data: - Addr: - Float: -n Return a value corresponding to negative infinity Class: class:word | Namespace: f | Interface Layer: rre f:-inf? Data: -f Addr: - Float: F- Return `TRUE` if floating-point value is -INF or `FALSE` otherwise. Class: class:word | Namespace: f | Interface Layer: rre f:INF Data: - Addr: - Float: -n Return a value corresponding to positive infinity Class: class:word | Namespace: f | Interface Layer: rre f:NAN Data: - Addr: - Float: -n Return a value corresponding to NaN Class: class:word | Namespace: f | Interface Layer: rre f:drop Data: - Addr: - Float: F- Discard the top item on the floating-point stack. Class: class:word | Namespace: f | Interface Layer: rre f:dup Data: - Addr: - Float: F-FF Duplicate the top item on the floating-point stack. Class: class:word | Namespace: f | Interface Layer: rre f:inf? Data: -f Addr: - Float: F- Return `TRUE` if floating-point value is INF or `FALSE` otherwise. Class: class:word | Namespace: f | Interface Layer: rre f:nan? Data: -f Addr: - Float: F- Return `TRUE` if floating-point value is NaN or `FALSE` otherwise. Class: class:word | Namespace: f | Interface Layer: rre f:power Data: - Addr: - Float: FF-F Return F1^F2 for floating-point values. Class: class:word | Namespace: f | Interface Layer: rre f:round Data: - Addr: - Float: f-f Round a floating-point value. Class: class:word | Namespace: f | Interface Layer: rre f:square Data: - Addr: - Float: f-f Return the square of a floating-point number. Class: class:word | Namespace: f | Interface Layer: rre f:to-number Data: -n Addr: - Float: F- Convert a floating-point value into a number. Class: class:word | Namespace: f | Interface Layer: rre if Data: fq- Addr: - Float: - Execute the quote if the flag is `TRUE`. Class: class:word | Namespace: global | Interface Layer: all n:MAX Data: -n Addr: - Float: - Return the maximum value that will fit in a cell. Class: class:word | Namespace: n | Interface Layer: all n:MIN Data: -n Addr: - Float: - Return the minimum value that will fit in a cell. Class: class:word | Namespace: n | Interface Layer: all n:between? Data: nlu-f Addr: - Float: - Return TRUE if number is between the lower (l) and upper (u) bounds. If not, return FALSE. This is inclusive of the limits. Class: class:word | Namespace: n | Interface Layer: all Example #1: #3 #1 #100 n:between? $q $a $b n:between? n:dec Data: n-m Addr: - Float: - Decrement n by one. Class: class:word | Namespace: n | Interface Layer: all Example #1: #100 n:dec n:inc Data: n-m Addr: - Float: - Increment n by one. Class: class:word | Namespace: n | Interface Layer: all Example #1: #100 n:inc n:limit Data: nlu-m Addr: - Float: - Return n if it is within the lower (l) and upper (u) bounds. If outside the bounds, return the closes boundary value. Class: class:word | Namespace: n | Interface Layer: all Example #1: #-10 #5 #8 n:limit #10 #1 #15 n:limit n:negate Data: n-n Addr: - Float: - Invert the sign of a number. Class: class:word | Namespace: n | Interface Layer: rre Example #1: #10 n:negate #-10 n:negate n:to-float Data: n- Addr: - Float: -F Convert a number into a floating-point value. Class: class:word | Namespace: n | Interface Layer: rre n:zero? Data: n-f Addr: - Float: - Return `TRUE` if number is zero, or `FALSE` otherwise. Class: class:word | Namespace: n | Interface Layer: all {{ Data: - Addr: - Float: - Begin a lexically scoped area. 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-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: -F Interpret time: convert string to a floating-point value. Compile time: convert string to a floating-point value and compile code to push this value to the float stack. Class: class:macro | Namespace: sigil | Interface Layer: rre 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