This summarizes the grammar of tiny, a computer programming language written by Les Hancock. An archive containing tiny may be obtained from http://primepuzzle.com/tc/tiny.zip tiny programs are text files that have lines that end in either carriage return linefeeds or just linefeeds. operators and relations + - / % * == > >= < <= <> tiny does integer arithmetic. 14/6 equals 2. 14%6 equals 2. statements / keywords : prints a newline, then its argument. examples :"time flies like the wind" :"fruit flies like bananas" :a+y ; prints its argument. examples ;a*31 ;"string" ->A branches to line label A. = assignment statement example a=3*a+1 This would load a with 12 if a were 3. See below for evaluation order. ? prompts for numeric input. example f=? ! halts execution. Note: programs must end with a !. Use a ! at other places when you want to stop execution. {expression} [{expression} ...] statement This is the if statement in tiny. Statement executes if expression is true (i.e. not 0). " opens and closes a string (see above for examples). ` opens a comment. ' closes a comment. Note: Comments can't contain apostrophes. Expressions evaluate right to left. Identifiers are single lowercase letters. These hold integers. There are no character variables. All variables are initialized to 0. Line labels are single uppercase letters.