On Sun, 21 Jun 2009 14:39:37 +0100, Jon Harrop <j...@ffconsultancy.com> wrote: > > I had not looked at Intel's offering because it does not (AFAIK) support > accurate garbage collection. Also, it is worth noting that there is no > difference between data and task parallelism in a genuine functional > language. >
Well, I meant task parallelism vs. data parallelism in the design intent, rather than the implementation. I find that calling computational fluid dynamics "data parallel", and a telecom switch "task parallel" is useful even if happens that solutions to both sorts of problems in "genuine FP" are somehow isomorphic. I feel that's because the problem domains, and the ways a typical programmer thinks about the solutions, are different enough that the isomorphism isn't likely to be astonishingly useful in practice. Well, maybe except for programming in the small. For instance, I don't see overwhelming practical applications of proving one could implement a telecom switch as parallel maps and reductions over a bunch of functions, unless (perhaps) you're a compiler writer and/or designing a DSL for the purpose. It's fun as a thought experiment, but I think that it would stray too far from the language of the problem without lots of sugar that would (it seems to me) just sort of take you back to where you started in terms of expressiveness. But then again, those sorts of visions aren't my forte :) > Right. If you hand-roll your C++ very carefully then you can get decent > performance but I was disappointed with the performance of the template > libraries and quality of g++ back in 2004 and have never used C++ since. Yeah, g++ 4.1 and 4.2 seemed to have a reputation for being especially bad at optimizing away abstraction penalties of heavy template usage. I understand this is much better in recent releases, but I haven't measured it myself. For all it's warts, C++ (like Java) has interesting things happen to it here and there, if only by sheer volume and chance. And every so often a problem comes along that feels like a good fit. Maybe I'm just perverse, and I bet *nobody* here will agree with me, but sometimes I feel "wrong" when I use a language like a Lisp, with its symbolic and meta-everything sweet spot, to do something as brutish and mundane as picking apart awful binary formats and chewing through vectors of integers and floats. It feels like ruining expensive top shelf bourbon by pouring it in Coke :) -Kyle --~--~---------~--~----~------------~-------~--~----~ 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 Note that posts from new members are moderated - please be patient with your first post. 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 -~----------~----~----~----~------~----~------~--~---