Hello,
I just poked around the Q source a bit and saw that there are quite a lot of try ... catch blocks to catch any errors. Now, this can be quite a performance impact on certain browsers. Also interesting is that this penalty seems to occur mainly when using try/catch _inside_ a function, like it is generally done in Q. Now, if you could move these blocks so that they are _outside_ of a function call this could result in a perfiormance increase.
For the raw Numbers, take a look at this:
http://jsperf.com/try-catch-performance-overheadMaybe this particular optimization would also make sense for Q?