Why not just import functions (using import expression as functions for SQLA < 0.9) and then use functions.FunctionElement, functions._FunctionGenerator, functions.Function? In other words I don't understand why we have a specific import for FunctionElement.