> Clearly we're spending way much time in the GC with the vxml variant. Thanks a lot! This is a nice tutorial for statprof.
What you have found out, was already my guess but I had no proof. The VXML version does not utilize the fact that the nodes are already destructured. During each visit of a node, the vector gets converted into an argument list and the result of the visit is that a new vector gets created. This produces a lot of garbage. It would be better to just pass the vector to the visiting function in order to return itself, if no modification is necessary.