Implement basic AST functionality