Use polymorphic variants for the AST as well.