The world of program optimization and transformation takes on a new fascination when viewed through the lens of program calculation.
Unlike the traditional fold/unfold approach to program transformation on arbitrary programs, the calculational approach imposes
restrictions on program structures, resulting in some suitable calculational forms such as homomorphisms and mutumorphisms
that enjoy a collection of generic algebraic laws for program manipulation. In this tutorial, we will explain the basic idea
of program calculation, demonstrate that many program optimizations and transformations, such as the optimization technique
known as loop fusion and the parallelization transformation, can be concisely reformalized in calculational form, and show
that program transformation in calculational forms is of higher modularity and more suitable for efficient implementation.
Keywords Program Transformation - Program Calculation - Program Optimization - Meta Programming - Functional Programming