#!/usr/local/bin/swift func IF(PRED:()->Bool,_ THEN:()->(),_ ELSE:()->()) { [true:THEN, false:ELSE][PRED()]!() } func fact(n:Int)->Int { var ret:Int! IF( {n <= 1}, { ret = 1 }, { ret = n * fact(n - 1)} ) return ret } print(fact(10))