/src/main/scala/scalagym/Curry.scala

http://github.com/mariofusco/scalagym · Scala · 30 lines · 6 code · 7 blank · 17 comment · 2 complexity · e99e1c1b7823a2f864cef7d2d61a2b4a MD5 · raw file

  1. package scalagym
  2. /**
  3. * @author Mario Fusco
  4. */
  5. object Curry extends Application {
  6. /*
  7. def sum(f: Int => Int): (Int, Int) => Int = {
  8. def sumF(a: Int, b: Int): Int =
  9. if (a > b) 0 else f(a) + sumF(a + 1, b)
  10. sumF
  11. }
  12. val sum1To10 = sum(x => x)(1, 10)
  13. */
  14. def sum(f: Int => Int)(a: Int, b: Int): Int = if (a > b) 0 else f(a) + sum(f)(a + 1, b)
  15. val sum1To10 = sum(x => x)(1, 10)
  16. /*
  17. def sum(a: Int, b: Int)(f: Int => Int): Int = if (a > b) 0 else f(a) + sum(a + 1, b)(f)
  18. val sum1To10 = sum(1, 10) { x => x }
  19. */
  20. println(sum1To10)
  21. }