write ast.ml