Program transformation [
1],[
2],[
3] can be described as the act of changing one program to another. The aim being an alteration of the program syntax but not
its semantics, hence leaving both source and target programs functionally equivalent. Consider as examples of transformations
the following program fragments: