| % | ( x y -- z ) Modulo two numeric values. In standard notation: a % b = c |
| * | ( x y -- z ) Multiply two numeric values. |
| + | ( x y -- z ) Add two numeric values. |
| - | ( x y -- z ) Subtract two numeric values. In standard notation: a - b = c |
| ... | ( [...] -- ... ) Unpack a quote. |
| .s | ( -- ) Print the state of the process: all available values. |
| / | ( x y -- z ) Divide two numeric values. In standard notation: a / b = c |
| : | ( ... [name] -- ) Bind variables to a quote of names. |
| abs | ( x -- y ) Determine the absolute value of a number. |
| alias | ( prev new -- ) Alias a new command from another, copying the description of the previous command. |
| and | ( a b -- bool ) Determine if two values are both truthy. |
| any? | ( [...] predicate -- bool ) Determine whether any value in a quote passes a condition. Stops at the first truthy result. |
| anything? | ( -- bool ) True if any value is present. |
| appendf | ( contents filename -- ) Write a string to a file. If a file previously existed, the new content will be appended. |
| args | ( -- [arg] ) Produce the arguments provided to the process when it was launched. |
| assert-true | ( cond message -- ) Naive assertion that requires a condition to be truthy. If falsy, it will print a message to standard error and fail with an exit code of 1. |
| cd | ( dirname -- ) Change the process's working directory. |
| chars | ( string -- [substring] ) Splits a string into individual characters, where a character is a single byte. (Not friendly to UTF-8 runes.) |
| concat | ( [...] [...] -- [...] ) Concatenate two quotes. Values are coerced into quotes. (For String concatenation, see join.) |
| contains? | ( haystack needle -- bool ) With Strings, determine if a string contains a substring. With quotes, determine if a quote contains a value. |
| cwd | ( -- dirname ) Produce the current working directory. |
| def | ( action name -- ) Define a command. |
| def! | ( action name -- ) Defines a new command. If nested, any commands or variables defined will be available in the calling scope. |
| def-usage | ( name description -- ) Define the usage notes of a given command. |
| def? | ( name -- bool ) Determine whether a command is defined. |
| define | ( action description name -- ) Define a command with a description. |
| defs | ( -- [name] ) Produce a quote of all defined commands. |
| deq | ( [a...] -- a [...] ) Dequeue the first value from a quote. |
| divisor? | ( a b -- bool ) Determine if a number a is evenly divisible by number b. |
| do | ( ... action -- ... ) Execute an action. |
| do! | ( ... action -- ... ) Execute an action. If nested, any commands or variables defined will be available in the calling scope. |
| do!? | ( ... action condition -- ... ) Conditionally execute an action. If nested, any commands or variables defined will be available in the calling scope. |
| do? | ( ... action condition -- ... ) Conditionally execute an action. |
| doin | ( context action -- ) Execute an action in a context. |
| downcase | ( string -- lower ) Convert a string to its lowercase form. |
| drop | ( a -- ) Drop the most recent value. |
| dup | ( a -- a a ) Duplicate the most recent value. |
| each | ( [...] action -- ) Perform a given action with each value in a quote. |
| ends-with? | ( string suffix -- bool ) Determine if a string ends with a suffix. |
| enl | ( -- ) Print a newline to standard error. |
| enq | ( a [...] -- [a...] ) Enqueue a value into a quote as its new first value. |
| ep | ( a -- ) Print the most recent value to standard error. |
| epl | ( a -- ) Print the most recent value and a newline to standard error. |
| epls | ( [...] -- ) Print the values of the most recent quote, each followed by a newline, to standard error. |
| eprint | ( a -- ) Print the most recent value to standard error. |
| eprintln | ( a -- ) Print the most recent value and a newline to standard error. |
| eprintlns | ( [...] -- ) Print the values of the most recent quote, each followed by a newline, to standard error. |
| eq? | ( a b -- bool ) Determine if two values are equal. Works for most types with coercion. |
| eval | eval |
| even? | ( a -- bool ) Determine if a number is even. |
| exec | ( process -- ) Execute a child process (from a String). When successful, returns stdout as a string. When unsuccessful, prints the child's stderr to stderr, and returns boolean false. |
| exit | ( exitcode -- ) Exit with the specified exit code. |
| filter | ( [...] predicate -- [...] ) Require some condition of all values in a quote. Truthy results are preserved, and falsy results are not. |
| first | ( [a...] -- a ) The first element of a quote. |
| green | ( -- ) Print a control character for green and bold (for the colorblind) to standard output and standard error. |
| gt? | ( x y -- bool ) Determine if a value is greater than another. In standard notation: a > b |
| gte? | ( x y -- bool ) Determine if a value is greater-than/equal-to another. In standard notation: a ≧ b |
| help | ( -- ) Print commands and their usage |
| inspire | ( -- wisdom ) Get inspiration. |
| interactive? | ( -- bool ) Determine if the input mode is interactive (a TTY) or not. |
| join | ( [substring] delim -- string ) Join strings with a delimiter. |
| last | ( [...a] -- a ) The last element of a quote. |
| len | ( [...] -- x ) The length of a string or quote. (Always 1 for single values.) |
| lines | ( string -- [substring] ) Splits a string on newlines. |
| loop | ( ... action -- ... ) Execute an action forever until it fails. |
| ls | ( -- [filename] ) Produce a quote of files and directories in the process's working directory. |
| lt? | ( x y -- bool ) Determine if a value is less than another. In standard notation: a < b |
| lte? | ( x y -- bool ) Determine if a value is less-than/equal-to another. In standard notation: a ≦ b |
| map | ( [...] command -- [...] ) Apply an action to all values in a quote. |
| nand | ( a b -- bool ) Determine if two values are not both truthy. |
| neq? | ( a b -- bool ) Determine if two values are unequal. |
| nl | ( -- ) Print a newline to standard output. |
| nor | ( a b -- bool ) Determine if neither of two values are truthy. |
| norm | ( -- ) Print a control character to reset any styling to standard output and standard error. |
| not | ( a -- bool ) Determine the inverse truthiness of a value. |
| odd? | ( a -- bool ) Determine if a number is odd. |
| or | ( a b -- bool ) Determine if either of two values are truthy. |
| p | ( a -- ) Print the most recent value to standard output. |
| parse-csv | ( string -- [[...]] ) Naive conversion of a raw string in comma-separated value (CSV) format to a quote of lines of cells |
| pl | ( a -- ) Print the most recent value and a newline to standard output. |
| pls | ( [...] -- ) Print the values of the most recent quote, each followed by a newline, to standard output. |
| pop | ( [...a] -- [...] a ) Pop the last value from a quote. |
| print | ( a -- ) Print the most recent value to standard output. |
| println | ( a -- ) Print the most recent value and a newline to standard output. |
| printlns | ( [...] -- ) Print the values of the most recent quote, each followed by a newline, to standard output. |
| procname | ( -- name ) Produce the name of the current process. This can be used, for example, to get the name of a shebang script. |
| push | ( [...] a -- [...a] ) Push a value into a quote as its new last value. |
| pwd | ( -- ) Print the current working directory to standard output. |
| quit | ( -- ) Quit. Prints a warning if there are any values left on stack. |
| quote | ( a -- [a] ) Quote a value. |
| quote-all | ( ... -- [...] ) Quote all current context. |
| rand | ( -- x ) Produces a random integer. |
| read-line | ( -- line ) Read a string from standard input until newline. |
| read-lines | ( -- [line] ) Read strings, separated by newlines, from standard input until EOF. (For example: until ctrl+d in a Unix-like system, or until a pipe is closed.) |
| readf | ( filename -- contents ) Read a file's contents as a string. |
| readln | ( -- line ) Read a string from standard input until newline. |
| readlns | ( -- [line] ) Read strings, separated by newlines, from standard input until EOF. (For example: until ctrl+d in a Unix-like system, or until a pipe is closed.) |
| red | ( -- ) Print a control character for red to standard output and standard error. |
| repl | repl |
| rev | ( [...] -- [...] ) Reverse a quote or string. Other types are unmodified. |
| rl | ( -- line ) Read a string from standard input until newline. |
| rls | ( -- [line] ) Read strings, separated by newlines, from standard input until EOF. (For example: until ctrl+d in a Unix-like system, or until a pipe is closed.) |
| rot | ( a b c -- c a b ) Rotate the three most recent values. |
| shebang-args | shebang-args |
| sort | ( [...] -- [...] ) Sort a list of values. When values are of different type, they are sorted in the following order: bool, int, float, string, command, deferred command, quote. |
| split | ( string delim -- [substring] ) Split a string on all occurrences of a delimiter. |
| starts-with? | ( string prefix -- bool ) Determine if a string starts with a prefix. |
| status | ( -- ) Print the state of the process: all available values. |
| swap | ( a b -- b a ) Swap the two most recent values. |
| times | ( ... action n -- ... ) Perform a given action n times. |
| to-bool | ( a -- bool ) Coerce a value to a boolean. |
| to-cmd | ( a -- command ) Coerce a value to a command. |
| to-def | ( a -- deferred ) Coerce a value to a deferred command. (Read as "definition" or "deferred".) |
| to-float | ( a -- float ) Coerce a value to a floating-point number. |
| to-int | ( a -- int ) Coerce a value to an integer. |
| to-quote | ( a -- [...] ) Coerce value to a quote. To quote a quote, use quote. |
| to-string | ( a -- string ) Coerce a value to a string. |
| undef? | ( name -- bool ) Determine whether a command is undefined. |
| unlines | ( [substring] -- string ) Joins strings with newlines. |
| unquote | ( [...] -- ... ) Unpack a quote. |
| unwords | ( [substring] -- string ) Joins strings with spaces. |
| upcase | ( string -- upper ) Convert a string to its uppercase form. |
| usage | ( name -- description ) Print the usage notes of a given command. |
| version | ( -- version ) Produce the version of dt in use. |
| while | ( ... action cond -- ... ) Perform an action while the condition is truthy. |
| words | ( string -- [substring] ) Splits a string on spaces. |
| writef | ( contents filename -- ) Write a string as a file. If a file previously existed, it will be overwritten. |