Enhancing flexibility and portability of Execution Preserving Language Transformation using Meta programming | IEEE Conference Publication | IEEE Xplore