Research Article

SPOT: A DSL for Extending Fortran Programs with Metaprogramming

Algorithm 6

The translated example code with the profiling library.
(1) PROGRAM exampleProg
(2) USE profiling_mod
(3) IMPLICIT NONE
(4) REAL a, b, c, result
(5) REAL calculation
(7) CALL profiling(“exampleProg:Input”)
(8) CALL Input(a, b, c)
(9) CALL profiling(“exampleProg:Input”)
(10) CALL profiling(“exampleProg:Calc”)
(11) result = Calc (a, b, c)
(12) CALL profiling(“exampleProg:Calc”)
(13) END