Advertisement
Guest User

clojure performance

a guest
Apr 18th, 2012
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.85 KB | None | 0 0
  1. (set! *unchecked-math* true)
  2.  
  3. (time (loop [result 0 i 0]
  4. (if (< i 10000)
  5. (recur
  6. (+ result
  7. (long
  8. (loop [result 0 j 0]
  9. (if (< j 10000)
  10. (recur (+ result (long (rand 1000))) (inc j))
  11. result))))
  12. (inc i))
  13. result)))
  14.  
  15. (time (loop [result 0
  16. i 0]
  17. (if (< i 10000)
  18. (recur (+ result (loop [result 0
  19. j 0]
  20. (if (< j 10000)
  21. (recur (+ result (int (rand 1000)))
  22. (+ j 1))
  23. result)))
  24. (+ i 1))
  25. result)))
  26.  
  27. ;; Result:
  28. ;; $ clojure1.3 3.clj
  29. ;; "Elapsed time: 4854.762678 msecs"
  30. ;; "Elapsed time: 4623.918518 msecs"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement