Rewrite the FrontEnd and AbstractSyntax