So I'm trying to ease my way back into blogging and I thought I'd start with some thoughts I had that came from this.
Now, my current job involves analyzing performance bottlenecks for a decent sized software company & then working with the individual R&D teams to make improvements.
My point is that from my own experiences, the quality of your compiler isn't the bottleneck. It's your design.
I'm not even making the obvious point that "you choose stupid algorithms you get stupid performance". I mean that when I have found application level issues they generally have either been bugs or they have been cases where the semantics for that feature of the app aren't compatible with high performace, e.g. some screen will too eagerly load request data from the database, too aggressively do calculations that could be delayed till later in the UI, etc. I've worked this job for about a year and I haven't yet had a time when I've found that our choice of language, VB6, has been the major problem.
My conclusion is that for things that aren't numerical analysis or video games, for applications that are real "pay the bills" software, the fact that something like Haskell is slower than C just doesn't seem that relevant.
Although, now that I think about it I'm not sure if it matters for those other things either.