Oh, sorry to email twice so soon, but I have an idea for making par-map usable in more cases: add a keyword argument called "block-size". Its value should be a positive integer, and the meaning is to have each thread do block-size iterations. That should make it easier to use par-map for cases like this where the cost of each function is very small.
I realize it's not a great solution because you still have to iterate through the list to get to the later elements. A hypothetical "vector-par-map" would solve that.
Noah