A library for macro based direct embedding of DSLs