-- sin, cos and sqrt are built-in, square, asin and acos are user-defined A = [#sin, #cos, #square] B = [#asin, #acos, #sqrt] testValue = 0.5 repeat with i = 1 to 3 -- for implementation details of compose() see https://www.rosettacode.org/wiki/Function_composition#Lingo f = compose(A[i], B[i]) res = call(f, _movie, testValue) put res = testValue end repeat