#lang sicp (define (square x) (* x x)) (define (sum-of-squares x y) (+ (square x) (square y))) (define (foo x y z) (if (> x y) (if (> y z) (sum-of-squares x y) (sum-of-squares x z)) (if (> x z) (sum-of-squares x y) (sum-of-squares y z)))) (foo 1 2 3) (foo 1 3 2) (foo 2 1 3) (foo 2 3 1) (foo 3 1 2) (foo 3 2 1)