refactored compilation process
support element-wise functions with arbitrary number of arguments through direct expression construction