Mathematics * ( factor0 factor1 -- product ) Multiplication + ( term0 term1 -- sum ) Addition - ( minuend subtrahend -- difference ) Subtraction / ( dividend divisor -- quotient ) Division ^ ( base exponent -- power ) Raise to power abs ( number0 -- number1 ) Absolute value acos ( number -- angle ) Arccosine asin ( number -- angle ) Arcsine atan ( number -- angle ) Arctangent atan2 ( y x -- angle ) Two-argument arctangent ceil ( number0 -- number1 ) Next closest integer value cos ( angle -- number ) Cosine exp ( base -- exponent ) Exponent floor ( number0 -- number1 ) Previous closest integer value ln ( antilogarithm -- logarithm ) Natural logarithm mod ( dividend divisor -- remainder ) Remainder after division neg ( number0 -- number1 ) Negative of 'number0' rcp ( number -- reciprocal ) Reciprocal sin ( angle -- number ) Sine sqrt ( radicand -- root ) Square root tan ( angle -- number ) Tangent Bitwise and conditional < ( value0 value1 -- condition ) Return TRUE if 'value0' is less than 'value1' = ( value0 value1 -- condition ) Return TRUE if 'value0' equals to 'value1' > ( value0 value1 -- condition ) Return TRUE if 'value0' is greater than 'value1' FALSE ( -- condition ) False constant TRUE ( -- condition ) True constant and ( value0 value1 -- value2 ) Conjunction lshift ( number0 shift -- number1 ) Bitwise left shift of 'number0' by 'shift' bits or ( value0 value1 -- value2 ) Disjunction rshift ( number0 shift -- number1 ) Bitwise right shift of 'number0' by 'shift' bits xor ( value0 value1 -- value2 ) Exclusive or ~ ( condition0 -- condition1 ) Logical complement or bitwise not Object control ! ( value index list -- ) Assign 'value' to 'list' field by 'index' & ( value0 value1 -- value2 ) Concatenate texts or lists , ( list value -- list ) Append 'value' to the end of 'list' with empty name @ ( index list -- value ) Get 'list' field by 'index' array ( value size -- list ) Create list of 'size' copies of 'value' cast ( number0 number1 -- number2 ) Convert 'number0' to the same primitive schema as 'number1' closure ( ... -- ... ) Call topmost callable list. Use @closure to get a reference to it copy ( value0 -- value1 ) Clone 'value0' fieldCount ( list -- size ) Get number of fields in the 'list' fieldName ( list index -- name ) Extract name of 'list' field by 'index', empty names are allowed has ( list name -- condition ) Return TRUE if 'list' contains field named 'name' insert ( value name list -- ) Append 'value' to the end of 'list' with 'name' is ( value0 value1 -- condition ) Return TRUE if both values reference the same object, equal primitive values are the same objects remove ( indexOrName list -- ) Remove field from 'list' by 'index' or by 'name' (last matching field is removed) same ( value0 value1 -- condition ) Return TRUE if both values have the same schema self ( ... -- ... ) Reference topmost bound list, if any. If list is callable, it will be called instead - use @self to get a reference to it set ( srcList dstList -- ) Replace fields of 'dstList' with a copy of 'srcList' fields untail ( list -- list value ) Extract 'value' from the end of the 'list' Flow control call ( ... body -- ... ) Execute text or callable if ( ... condition body0 body1 -- ... ) If cond is TRUE, execute body0, otherwise execute body1 loop ( ... body -- ... ) Execute body in a loop while it returns TRUE Utility LF ( -- lineFeed ) Get text consisting of a line feed print ( value -- ) Print text representation of 'value' to the text output printStack ( -- ) Send information about stack state to the text output textSplit ( text -- list ) Split text into list of texts containing Unicode Code Points toText ( value -- text ) Get textual representation of 'value', 'call' can be used for the inverse operation useFile ( ... name -- ... ) Execute contents of file named 'name'