On Dec 30, 9:18 am, Mibu <mibu.cloj...@gmail.com> wrote: > In an ideal world, standard functions like map, sort, reduce, filter, > etc. would know when to parallelize on their own, or even better, the > compiler will do it for them.
The former is easier than the latter ;-) Even the smartest autoparallelizing compilers rely on manual annotations to expose lack of sequential dependencies in loops, but a function's API can guarantee that parallelism and let the function's implementation do the heavy lifting. It takes so much effort to write a "good" (read "aggressively optimizing") compiler that major releases come out on the same schedule as major CPU releases, which means users don't get time to work out all the bugs on the current (hardware,software) combination before the next compiler and CPU come out. Besides, compiler bugs are incredibly frustrating for users (trust me). This means it's better to have simpler compilers and smarter libraries. mfh --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---