start using pattern matching, toString for AST