reverting to use distinct AST list types