Advertisement
Guest User

Untitled

a guest
Jul 4th, 2015
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.29 KB | None | 0 0
  1. func p<T, U>(g: T -> U, h: (UInt, U, T) -> U) -> ((UInt, T) -> U) {
  2.  
  3. var fx: ((UInt, T) -> U)!
  4. func f(y: UInt, x: T) -> U {
  5. if y == 0 {
  6. return g(x)
  7. }
  8. else {
  9. return h(y-1, fx(y-1, x), x)
  10. }
  11. }
  12. fx = f
  13.  
  14. return f
  15. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement