DUO TINY 2 PROGRAMMING LANGUAGE The variables available to a program are labelled A through Z. A function is called by placing the function name followed by arguments delimited by spaces. An argument may be a variable, integer literal, list literal (values enclosed by parentheses), or string literal. For example: PRINT "HELLO" + A 1 2 = B (900 720 A) Values are stored on the heap instead of the stack. DT2PL features automatic reference counting. If there are no more remaining references to a heap entry, the data will be deleted. Please be aware that recursive entries cannot be deallocated. All integers are signed two byte values. Strings are null delimited lists of integers. Every file on the DUO Tiny 2 is a function. To call a file, use the file name as the function name. When a function is invoked, the computer will create a new set of variables. The function arguments will be fed into the variables starting at A. Built-in functions: = dest value + dest value value (only for integers) - dest value value * dest value value / dest value value % dest value value == dest value value (only for integers) > dest value value ! dest value ~ dest value | dest value value & dest value value << dest value value >> dest value value IF value END WHL value BRK RET RAND dest maximum (maximum is exclusive) STR dest integer (convert integer to string) INT dest string (convert string to integer) LEN dest string/list TRUNC list length GET dest list index SET list index value (will expand the list as necessary) PRINT string INPUT dest