__IGNORE__ = /[ \n\t]*/ CLOSE_PARENTHESE = ')' EQUALS = '=' OPEN_PARENTHESE = '(' DEF = 'def' END = 'end' IDENTIFIER = /[A-Za-z_][A-Za-z_0-9]*/ NUMBER = /\d+(\.\d+)?/ STRING = /'(.*?|\\')'|"(.*?|\\")"/ expression = assignment_statement = IDENTIFIER EQUALS expression function_definition_statement = DEF IDENTIFIER OPEN_PARENTHESE argument_definition_list CLOSE_PARENTHESE statement_list END expression_statement = expression statement = assignment_statement | function_definition_statement