G(x_1, x_2, x_3, ..., x_n-1) = F(a, x_1, x_2, x_3, ..., x_n-1) (in case of Fix-first-parameter function),
G(x_1, x_2, x_3, ..., x_n-1) = F(x_1, a, x_2, x_3, ..., x_n-1) (in case of Fix-second-parameter function).
For example:
1.
Code: Select all
(define function1 (lambda (x y z) (+ x (* 2 y) (* 3 z))))
(display ((Fix-first-parameter function1 1) 2 3))
Code: Select all
14
Code: Select all
(define function1 (lambda (x y z) (+ x (* 2 y) (* 3 z))))
(display ((Fix-second-parameter function1 1) 2 3 ))
Code: Select all
13
Code: Select all
(define function2 (lambda (x y z s) (cons (+ x (* 2 y)) (+ z (* 4 s)))))
(display ((Fix-second-parameter function2 2) 1 3 2))
Code: Select all
(5 . 11)
Very important is fact, that arguments x_1, ..., x_n-1 are given not as a list by directly. I don't know how to extract (currying?) them and write a function that will work properly on the examples given above. I hope that some of you will help me.
