Software Language Engineering - Combemale; Barais, Olivier; Pearce, David; Vinju, Jurgen (Springer International Publishing, 2014)