(let if (fn (cond iftrue iffalse) (Bool T T) T (case cond (true iftrue) (_ iffalse)) ) ) (let ++ (fn x Int Int (+ x 1) ) ) (let -- (fn x Int Int (- x 1) ) ) (let sum (fix (fn sum' ((Vector (Int ...)) -> Int) ((Vector (Int ...)) -> Int) (fn vec (Vector (Int ...)) Int (case vec ((h ..t) (+ h (sum' t))) (_ 0)) ) ) ))