AST finished. Keep on adding semantics.