PrintASTTree with visitor pattern